python—004
一、集合(set)
1、定义:不同的元素组成,无序排列的,可哈希的值(存放不可变类型:数字、字符串、元组)
s={1,2,'ww',3,4,5,6,7,8,'ee'}
print (type(s))
print (s)
a=set('ehdjdjjdjfnsdjbfsdjnjksbdjhb')
print (a)
<class 'set'>
{1, 2, 3, 'ww', 4, 5, 6, 7, 8, 'ee'}
{'f', 'k', 'd', 'j', 'e', 's', 'b', 'h', 'n'}
2、集合内置方法
(1)#add 添加
a=set(['里','sb'])
a.add('dddd大傻逼')
a.add('3')
a.add(3)
print (a)
{3, 'sb', '3', 'dddd大傻逼', '里'}
#clear 清空
print (a.clear(),'ww')
# 返回: None
#copy 复制
v=a.copy()
print (v)
#返回:{3, 'sb', '里', '3', 'dddd大傻逼'}
#remove 指定删除(删除不存在的,会报错)
a.remove('3')
print (a)
#返回: {'里', 'dddd大傻逼', 'sb'}
#discard 指定删除(删除不存在的,不会报错)
a.discard('33333333')
print (a)
python=['ww','ee','gg','ee','ere']
linux=['ss','dd','gg','ww']
#集合可以去重,得到的结果是无序的
ps=set(python)
print (ps)
#返回:{'gg', 'ww', 'ere', 'ee'}
#intersection 求交集
ps=set(python)
ls=set(linux)
print (ps,ls)
print (ps.intersection(ls))
print (ps&ls)
#返回:{'ww', 'ere', 'gg', 'ee'} {'ww', 'ss', 'gg', 'dd'}
# {'ww', 'gg'}
# {'ww', 'gg'}
# union 求并集
ps=set(python)
ls=set(linux)
print (ps,ls)
print (ps.union(ls))
print (ps|ls)
#返回:{'ww', 'ere', 'ee', 'gg'} {'sb', 'gg', 'ww', 'dd', 'ss'}
# {'ere', 'sb', 'ee', 'gg', 'ww', 'dd', 'ss'}
# {'ere', 'sb', 'ee', 'gg', 'ww', 'dd', 'ss'}
# # union求差集
ps=set(python)
ls=set(linux)
print (ps-ls)
print (ls-ps)
print (ps.difference(ls))
print (ls.difference(ps))
#:返回:{'ere', 'ee'}
{'ss', 'dd', 'sb'}
{'ere', 'ee'}
{'ss', 'dd', 'sb'}
#交叉补集
ps=set(python)
ls=set(linux)
print (ps.symmetric_difference(ls))
print (ps^ls)
#返回:{'sb', 'dd', 'ee', 'ss', 'ere'}
{'sb', 'dd', 'ee', 'ss', 'ere'}
#如果两个集合没有交集,结果为none,则返回true,有交集则返回False
s1={1,2}
s2={3,4}
print (s1.isdisjoint(s2))
#返回:True
#s1是s2的子集 结果返回true ,s1不是s2的子集 结果返回False
s1={1,2}
s2={1,2,3,4}
print (s1.issubset(s2))
print (s2.issubset(s1))
# 返回:True
False
s1={1,2}
s2={1,2,3,4}
#s1是s2的父集 结果返回true ,s1不是s2的父集 结果返回False
print (s1.issuperset(s2))
print (s2.issuperset(s1))
#返回:False
True
#update 更新,可以更新多个值,而add只能添加一个
s1={1,2}
s2={2,3,4}
s1.update(s2)
s1.update(('22',333),[33333])
print (s1)
#返回:{1, 2, 3, 4, 33333, '22', 333}
#frozenset 不可变集合
s3=frozenset('eeee')
print (s3)
python—004的更多相关文章
- Selenium with Python 004 - 页面元素操作
毫无疑问,首先需要导入webdriver from selenium import webdriver 清除文本 driver.find_element_by_id('kw').clear() 文本输 ...
- Learning Python 004 基础的数据类型和变量
Python 基础的数据类型和变量 数据类型 整数 Python可以处理任意大小的整数,当然包括负整数. Python表示十六进制也用0x前缀. 浮点数 1.23x10^9和12.3x10^8是完全相 ...
- leetcode python 004
## 已知l1,l2均为升序数组,## 在两数组l1,l2中寻找第n位数,## 两数组中位数中,前者大于后者,说明后者中位数以下的成员必定在真正中位数之下## 可以将其剔除,剔除a个元素后的两 ...
- python 004 执行环境对比
对比:os.system os.popen subprocess.Popen subprocess.call 为什么要搞这么多? # --*--encoding: utf-8--*-- import ...
- Python练习题 004:判断某日期是该年的第几天
[Python练习题 004]输入某年某月某日,判断这一天是这一年的第几天? ---------------------------------------------- 这题竟然写了 28 行代码! ...
- [python学习手册-笔记]004.动态类型
004.动态类型 ❝ 本系列文章是我个人学习<python学习手册(第五版)>的学习笔记,其中大部分内容为该书的总结和个人理解,小部分内容为相关知识点的扩展. 非商业用途转载请注明作者和出 ...
- python笔记:#004#注释
注释 目标 注释的作用 单行注释(行注释) 多行注释(块注释) 01. 注释的作用 使用用自己熟悉的语言,在程序中对某些代码进行标注说明,增强程序的可读性 02. 单行注释(行注释) 以 # 开头,# ...
- 从0开始的Python学习004小的总结与补充
没有时间?快速阅读: Python确实是一种十分精彩又强大的语言. Python是程序.脚本或者软件 python helloworld.py运行你的Python help()帮助你的Python 命 ...
- Python:每日一题004
题目: 输入某年某月某日,判断这一天是这一年的第几天? 程序分析: 以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天,特殊情况,闰年且输入月份大于2时需考虑多加一天 个人的思路及 ...
随机推荐
- jvm中的新生代Eden和survivor区
1.为什么会有年轻代 我们先来屡屡,为什么需要把堆分代?不分代不能完成他所做的事情么?其实不分代完全可以,分代的唯一理由就是优化GC性能.你先想想,如果没有分代,那我们所有的对象都在一块,GC的时候我 ...
- 【BZOJ4031】【Luogu P4111】[HEOI2015]小Z的房间
裸的矩阵树定理.求行列式的时候答案要在中间统计,因为交换两个行会使答案取反. #include <bits/stdc++.h> using namespace std; const int ...
- Python基于机器学习方法实现的电影推荐系统
推荐算法在互联网行业的应用非常广泛,今日头条.美团点评等都有个性化推荐,推荐算法抽象来讲,是一种对于内容满意度的拟合函数,涉及到用户特征和内容特征,作为模型训练所需维度的两大来源,而点击率,页面停留时 ...
- DevExpress ASP.NET Core v19.1版本亮点:Visual Studio集成
行业领先的.NET界面控件DevExpress 发布了v19.1版本,本文将以系列文章的方式为大家介绍DevExpress ASP.NET Core Controls v19.1中新增的一些控件及增强 ...
- C# WCF发布服务的元数据的方式
发布服务元数据的方式有两种:一是基于HTTP-GET协议提供元数据,它是一种绝大多数平台都能支持的简单text-based协议:另一种是元数据交换终结点. 1.基于HTTP-GET协议 <?xm ...
- C# out关键字
在c#中"out"关键字可以通过参数一次返回多个值. using System; namespace ConsoleApplication1 { internal class Pr ...
- 对组件、Prop 和 State的研究-----------------引用
组件 第一步是将 UI 分解成多个组件.例如,我们可以这样来拆分房子: 现在来编码! House: <div> <Roof /> // 房顶 <Wa ...
- 关于C#的学习
长期以来对C#的认识一直停留在微软件开发的完全面向对象的语言的模糊印象上,对其工程也缺乏多文件以上级别的修改能力,而当前流行度的驱使下,想深入了解它并运用. 于是从git上下载了一个C#开源项目,打开 ...
- node监视文件或者文件夹的变化
1.node提供一个watch这个API,可以监视文件或文件夹的变化,当发生改变时,做出某些操作.(当做代码本地构建时,经常使用) const fs = require('fs'); fs.watch ...
- .Net笔试考题
.NET试题 1.列举ASP.NET页面之间传递值的几种方式 2.请写出 override 与重载的区别 3.请编程实现一个冒泡排序算法 4.什么是装箱和拆箱 5.ADO.net中常用的对象有哪些?分 ...