一、定义:

  

二、基本操作:

    

三、运算:

    交集&, 并集|, 补集-, 对称补集^, 子集<   超集>

四、集合推导式:

    

五、固定集合 frozenset

    

六、基本代码:

  

# 1. 创建空集合
s01 = set()
# 2. 创建具有默认值的集合
s01 = {1,2,3,4}
# print(type(s01))
# 3. 其他容器 -->  集合
s02 = set("abcdace")
s02 = set([1,7,56,8,7,8])
# 集合 --> 其他容器  
l02 = list(s02)
t02 = tuple(s02)
# 4. 添加
s02.add("a")
s02.add("b")
s02.add("c")
print(s02)# {1, 7, 8, 'c', 'b', 56, 'a'} # 5. 删除
# s02.remove(7)
# s02.remove(9) # 如果该元素不存在,则错误. # if 9 in s02:
# s02.remove(9) s02.discard("a") # 如果该元素不存在,不会错误.
print(s02) # 6. 获取所有元素
for item in s02:
print(item) # 7. 计算
s03 = {1,2,3}
s04 = {2,3,4} # 交集
s05 = s03 & s04
print(s05)# {1, 2} # 并集
s05 = s03 | s04
print(s05) # {1, 2, 3, 4} # 补集
s05 = s03 ^ s04
print(s05) # {1, 4} s05 = s03 - s04
print(s05) # {1} s05 = s04 - s03
print(s05) # {4} # 子集 超集
s06 = {1,2,3}
s07 = {1,2}
re = s07 < s06 # True 说明s07 是  s06 的子集
re = s06 > s07 # True 说明s06 是  s07 的超集
print(re) # 相同  不同
s08 = {1,2,3}
s09 = {1,2,3}
re = s08 != s09 # True 说明s08 与  s09 相同
print(re)

  

"""
固定集合
"""
f01 = frozenset([1,2,2,4])
print(type(f01))
print(f01)

七、实例:

  1、练习1:在控制台中随意录入多个字符串.按q退出,再显示所有不重复的字符串

    

set_target = set()
while True:
str_input = input("请随意输入:")
if str_input == "q":
break
set_target.add(str_input) for item in set_target:
print(item)

  2、练习2:经理:[曹操,刘备,孙权]  技术员:[曹操,刘备,张飞,关羽]

    1. 即是经理也是技术员的有谁?
    2. 是经理,但不是技术员的有谁?
    3. 是技术员,但不是经理的有谁?
    4. 张飞是经理吗?
    5. 身兼一职的都有谁?
    6. 经理和技术员总共有多少人?

    

list01 = ["曹操","刘备","孙权"]
list02 = ["曹操","刘备","张飞","关羽"] set01 = frozenset(list01)
set02 = frozenset(list02)
#1. 即是经理也是技术员的有谁?
print(set01 & set02) #2. 是经理,但不是技术员的有谁?
print(set01 - set02) #3. 是技术员,但不是经理的有谁?
print(set02 - set01) #4. 张飞是经理吗?
print("张飞" in set01) #5. 身兼一职的都有谁?
print(set02 ^ set01) #6. 经理和技术员总共有多少人?
print(len(set02 | set01))

    

Python基础之集合的更多相关文章

  1. python基础数据类型--集合(set)

    python基础数据类型--集合(set) 集合是一个数学概念由一个或多个确定的元素所构成的整体叫做集合 集合中的三个特征 1.确定性(元素必须死可hash) 2.互异性(去重) 3.无序性(集合中的 ...

  2. Python基础(三)——集合、有序 无序列表、函数、文件操作

    1.Set集合 class set(object): """ set() -> new empty set object set(iterable) -> n ...

  3. python 基础 set 集合类型补充

    为啥今天又重提这个数据类型呢?平时用的少,等要用起来的时候才发现,自己对这块啥都不知道了,so,今天就把这块再梳理一下咯. 一.set集合,是一个无序且不重复的元素集合.这一点是非常重要的. 二.集合 ...

  4. python基础08_set集合

    关于前几次课的回顾: #!/usr/bin/env python # coding:utf-8 ## 字符串 数字 列表 元组 字典 ## 可变:列表 字典 ## 不可变:字符串, 数字, 元组 na ...

  5. python基础七--集合

    12.221.昨日内容回顾 小数据池: int:-5--256 str:1.不能有特殊字符 2.*int不能超过20 编码:所能看到的最小构成单位叫字符 ascii : 8位 1字节 表示1个字符 u ...

  6. Python基础入门-集合

    今天给大家分享的是python中集合(set)的概念,集合这个词其实和高中学的数学集合的概念很相近,或者作为初学者你就可以把它理解为数学当中的集合.在python中集合(set)是由一个个键组成的,但 ...

  7. python基础——数字&集合&布尔类型

    Python的核心数据类型 内置对象 对象类型 例子 数字 123,3.1415,3+4j,Decimal(小数),Fraction(分数) 字符串 'dodo',"guido's" ...

  8. Python基础-set集合操作

    set集合,是一个无序且不重复的元素集合.定义方式类似字典使用{}创建 目前我们学过的数据类型: 1.字符串(str),2.整型(int),3.浮点型(float),4,列表(list) 5.元组(t ...

  9. Python基础-week03 集合 , 文件操作 和 函数详解

    一.集合及其运算 1.集合的概念 集合是一个无序的,不重复的数据组合,它的主要作用如下 *去重,把一个列表变成集合,就自动去重了 *关系测试,测试两组数据之前的交集.并集.差集.子集.父级.对称差集, ...

  10. Python基础操作-集合

    在Python set是基本数据类型的一种集合类型,它有可变集合(set())和不可变集合(frozenset)两种.创建集合set.集合set添加.集合删除.交集.并集.差集的操作都是非常实用的方法 ...

随机推荐

  1. 数据库的URL格式

    Oracle数据库: 驱动jar包: ojdbc6.jar 驱动程序类名字:oracle.jdbc.OracleDriver JDBC URL:jdbc:oracle:thin:@//<host ...

  2. BZOJ-2308 小z的袜子(莫队)

    题目链接 题意 $n$点$m$次询问区间内随机取两个数是相同数的概率 思路 莫队入门题,对询问按块排序后更新答案,复杂度$O(n\sqrt{n})$ 代码 //#pragma comment(link ...

  3. MVC5 Entity Framework学习

    MVC5 Entity Framework学习(1):创建Entity Framework数据模型 MVC5 Entity Framework学习(2):实现基本的CRUD功能 MVC5 Entity ...

  4. kettle 数据迁移

    最近在公司搞一个项目重构迁移问题,旧项目一直在线上跑,重构的项目则还没上线.重构之后数据库表结构,字段,类型等都有变化,而且重构的数据库由oracl改为mysql.这样就设计到数据迁移问题,别人推荐下 ...

  5. day01 进制转换与内存分布

    今日重点: 1.进制之间的转换 进制:指的是进位的制度.进制主要有二进制.八进制.十六进制等,计算机底层运用的是二进制,为了方便阅读,通常会使用八进制或十六进制进行表示.在32位系统中,通常使用八进制 ...

  6. HDR拍照

    HDR 拍照:        (High Dynamic Range Imaging)高动态范围成像,是用来实现比普通数字图像技术更大曝光动态范围(即更大的明暗差别)的一组技术.高动态范围成像的目的就 ...

  7. 【原创】大数据基础之Oozie(2)使用

    命令行 $ oozie help 1 导出环境变量 $ export OOZIE_URL=http://oozie_server:11000/oozie 否则都需要增加 -oozie 参数,比如 $ ...

  8. js-检测字符串出现次数最多,并返回

    function validateStr(val){ let obj = {}; let maxNum = -1; let maxStr; for(let i=0;i<val.length;i+ ...

  9. 在DIV中如何控制字的位置?

    想到实现字体在div中处于上图(右下角)的位置的话,只需在字体样式上面加上这行代码就好了:style='margin-top:120px;height:20px;float:right;text-al ...

  10. django 实战篇之路由层

    路由层 如何给网页添加首页及尾页 urlpatterns = [ url(r'^admin/', admin.site.urls), url(r'test',views.test), url(r'te ...