码迷,mamicode.com
首页 > 编程语言 > 详细

Python集合

时间:2019-01-09 16:39:12      阅读:199      评论:0      收藏:0      [点我收藏+]

标签:布尔   子集   upd   als   cfa   ddd   更新   clear   删除   

定义:由不同元素组成的集合,集合中是一组无须排列的可hash值,可以作为字典的Key

特点:

  a.不同元素组成

  b.无序

  c.集合中元素必须是不可变类型(数字、字符串、元祖)

方法:

  -add()

技术分享图片
1 arr_Num = {1, 2, 3, 4, 5}
2 arr_Num.add(alex)
3 print(arr_Num)
View Code

  -clear()

技术分享图片
1 arr_Num = {1, 2, 3, 4, 5}
2 arr_Num.clear()
3 print(arr_Num)
View Code

  -copy()

技术分享图片
1 arr_Num = {1, 2, 3, 4, 5}
2 arr_Num1 = arr_Num.copy()
3 print(arr_Num1)
View Code

  -pop() 删除,不确定从左边删,还是右边删,因为集合是无序的

技术分享图片
1 arr_Num = {1, 2, 3, 4, 5}
2 arr_Num.pop()
3 print(arr_Num)
View Code

  -remove() 指定元素删,若元素不存在,会报错

技术分享图片
1 arr_Num = {1, 2, 3, 4, 5}
2 arr_Num.remove(3)
3 print(arr_Num)
View Code

  -discard() 指定元素删,若元素不存在,不会报错

技术分享图片
1 arr_Num = {1, 2, 3, 4, 5}
2 arr_Num.discard(33)
3 print(arr_Num)
View Code

集合关系:

  -intersection() 找2个集合中的交集,即共同的部分

技术分享图片
1 arr_Num1 = {1, 2, 3, 4, 5}
2 arr_Num2 = {2, 4, 5}
3 print(arr_Num1.intersection(arr_Num2))
View Code

  - “&”  同上一个方法

技术分享图片
1 arr_Num1 = {1, 2, 3, 4, 5}
2 arr_Num2 = {2, 4, 5}
3 print(arr_Num1 & arr_Num2)
View Code

  -union() 并集

技术分享图片
1 arr_Num1 = {1, 2, 3, 4, 5}
2 arr_Num2 = {2, 4, 5, 7}
3 print(arr_Num1.union(arr_Num2))
View Code

  - “|” 同上一个方法

技术分享图片
1 arr_Num1 = {1, 2, 3, 4, 5}
2 arr_Num2 = {2, 4, 5, 7}
3 print(arr_Num1 | arr_Num2)
View Code

  - difference() 求差集

技术分享图片
1 arr_Num1 = {1, 2, 3, 4, 5}
2 arr_Num2 = {2, 4, 5, 7}
3 print(差集:, arr_Num1.difference(arr_Num2))
View Code

  - “-” 同上一个方法

技术分享图片
1 arr_Num1 = {1, 2, 3, 4, 5}
2 arr_Num2 = {2, 4, 5, 7}
3 print(差集:, arr_Num1 - arr_Num2)
View Code

  - symmetric_difference() 求交叉补集

技术分享图片
1 arr_Num1 = {1, 2, 3, 4, 5}
2 arr_Num2 = {2, 4, 5, 7}
3 print(交叉补集:, arr_Num1.symmetric_difference(arr_Num2))
View Code

  - “^”  同上一个方法

技术分享图片
1 arr_Num1 = {1, 2, 3, 4, 5}
2 arr_Num2 = {2, 4, 5, 7}
3 print(交叉补集:, arr_Num1 ^ arr_Num2)
View Code

  - difference_update() 交叉完之后,更新

技术分享图片
1 arr_Num1 = {1, 2, 3, 4, 5}
2 arr_Num2 = {2, 4, 5, 7}
3 arr_Num1.difference_update(arr_Num2)
4 print(交叉完之后,赋值给arr_Num1:, arr_Num1)
View Code

  - isdisjoint() 返回一个布尔值,如何二个集合没有交集,返回一个True;反之则,False

技术分享图片
1 arr_Num1 = {1, 2, 3, 4, 5}
2 arr_Num2 = {7}
3 accept_result = arr_Num1.isdisjoint(arr_Num2)
4 print(accept_result)
View Code

  - issubset() 返回一个布尔值,判断一个集合是否是第二个集合的子集

技术分享图片
1 arr_Num1 = {1, 2, 3, 4, 5}
2 arr_Num2 = {2, 3}
3 accept_result = arr_Num2.issubset(arr_Num1)
4 print(accept_result)
View Code

  - issuperset() 返回一个布尔值,判断一个集合是否是第二个集合的父集

技术分享图片
1 arr_Num1 = {1, 2, 3, 4, 5}
2 arr_Num2 = {2, 3}
3 accept_result = arr_Num2.issuperset(arr_Num1)
4 print(accept_result)
View Code

  -update() 一个集合更新到另一个集合

技术分享图片
1 arr_Num1 = {1, 2, 3, 4, 5}
2 arr_Num2 = {6, 7}
3 arr_Num1.update(arr_Num2)
4 print(arr_Num1)
View Code

 

Python集合

标签:布尔   子集   upd   als   cfa   ddd   更新   clear   删除   

原文地址:https://www.cnblogs.com/chenyanbin/p/10245157.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!