一、集合(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的更多相关文章

  1. Selenium with Python 004 - 页面元素操作

    毫无疑问,首先需要导入webdriver from selenium import webdriver 清除文本 driver.find_element_by_id('kw').clear() 文本输 ...

  2. Learning Python 004 基础的数据类型和变量

    Python 基础的数据类型和变量 数据类型 整数 Python可以处理任意大小的整数,当然包括负整数. Python表示十六进制也用0x前缀. 浮点数 1.23x10^9和12.3x10^8是完全相 ...

  3. leetcode python 004

    ##  已知l1,l2均为升序数组,##  在两数组l1,l2中寻找第n位数,##  两数组中位数中,前者大于后者,说明后者中位数以下的成员必定在真正中位数之下##  可以将其剔除,剔除a个元素后的两 ...

  4. python 004 执行环境对比

    对比:os.system os.popen subprocess.Popen subprocess.call 为什么要搞这么多? # --*--encoding: utf-8--*-- import ...

  5. Python练习题 004:判断某日期是该年的第几天

    [Python练习题 004]输入某年某月某日,判断这一天是这一年的第几天? ---------------------------------------------- 这题竟然写了 28 行代码! ...

  6. [python学习手册-笔记]004.动态类型

    004.动态类型 ❝ 本系列文章是我个人学习<python学习手册(第五版)>的学习笔记,其中大部分内容为该书的总结和个人理解,小部分内容为相关知识点的扩展. 非商业用途转载请注明作者和出 ...

  7. python笔记:#004#注释

    注释 目标 注释的作用 单行注释(行注释) 多行注释(块注释) 01. 注释的作用 使用用自己熟悉的语言,在程序中对某些代码进行标注说明,增强程序的可读性 02. 单行注释(行注释) 以 # 开头,# ...

  8. 从0开始的Python学习004小的总结与补充

    没有时间?快速阅读: Python确实是一种十分精彩又强大的语言. Python是程序.脚本或者软件 python helloworld.py运行你的Python help()帮助你的Python 命 ...

  9. Python:每日一题004

    题目: 输入某年某月某日,判断这一天是这一年的第几天? 程序分析: 以3月5日为例,应该先把前两个月的加起来,然后再加上5天即本年的第几天,特殊情况,闰年且输入月份大于2时需考虑多加一天 个人的思路及 ...

随机推荐

  1. Elasticsearch改动

    随着Elasticsearch的版本升级,Elasticsearch的一些特性也在改变,下面是一些需要注意的地方 v6.x 版本之前 : 一个index下面是可以创建多个type v6.x 版本 : ...

  2. POJ1185炮兵阵地(DP状态压缩)

    问题描述 司令部的将军们打算在N*M的网格地图上部署他们的炮兵部队.一个N*M的地图由N行M列组成,地图的每一格可能是山地(用"H" 表示),也可能是平原(用"P&quo ...

  3. RocketMQ和Kafka的差异对比

    Broker差异 主从差异: kafka的master/slave是基于partition维度的,而rocketmq是基于broker维度的:kafka的master/slave是可以切换的,而roc ...

  4. Acwing-275-传纸条(DP)

    链接: https://www.acwing.com/problem/content/description/277/ 题意: 给定一个 N*M 的矩阵A,每个格子中有一个整数. 现在需要找到两条从左 ...

  5. Jenkins环境搭建遇到的问题

    参考文章 https://www.cnblogs.com/yuanluo9898/p/10724252.html 问题一:tomcat启动乱码,如图所示 解决方案:https://blog.csdn. ...

  6. Java验证身份证是否合法

    import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.GregorianCalendar; im ...

  7. JavaScript 正则表达式——定义,目的,特点,语法,字符串方法,search() ,replace() ,test(),exec()

    ㈠什么是正则表达式? ⑴正则表达式,又称规则表达式.(英语:Regular Expression,在代码中常简写为regex.regexp或RE),计算机科学的一个概念.    正则表达式通常被用来检 ...

  8. ASE高级软件工程 第一周博客作业

    1.自我介绍 我叫姚顺,是来自哈尔滨工业大学计算机学院的一名大四本科生,专业方向计算机科学,目前在KC组实习.平时的业余时间主要用来打篮球,听音乐,跑步,当然还有游戏(划掉).之前的大学三年主要用来做 ...

  9. TTTTTTTTTTTTTTTTTTT CF 银行转账 图论 智商题

    C. Money Transfers time limit per test 1 second memory limit per test 256 megabytes input standard i ...

  10. 【PKUSC2019】线弦图【计数】【树形DP】【分治FFT】

    Description 定义线图为把无向图的边变成点,新图中点与点之间右边当且仅当它们对应的边在原图中有公共点,这样得到的图. 定义弦图为不存在一个长度大于3的纯环,纯环的定义是在环上任取两个不相邻的 ...