2.2.2.5Python-集合

总目录:https://www.jianshu.com/p/e406a9bc93a9

Python - 子目录:https://www.jianshu.com/p/50b432cb9460

集合

集合(set)是一个无序的不重复元素序列。

可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。

创建格式:

parame={value01,value02,...}

或者

set(value)   #这里value不能是纯数字



基础运算

basket= {'apple','orange','apple','pear','orange','banana'}

print(basket)                                     # 这里演示的是去重功能 

{'orange','banana','pear','apple'}


print('orange' in basket)                # 快速判断元素是否在集合内 

True 

print('crabgrass' in basket)

False


# 两个集合的符号运算

a=set('abracadabra') 

b=set('alacazam') 


print(a) 

{'a','r','b','c','d'}

print(b)

{'a','l','c','z','m'}


print(a-b)                                     # a中有,b中没有的元素 (a的差集)

{'r','d','b'}


print(a|b)                                        # a和b所有的不重复元素 (并集)

{'a','c','r','d','b','m','z','l'}


print(a&b)                                        # a和b都有的元素 (交集)

{'a','c'}


print(a^b)                               # a中没有和b中没有的元素 (a的差集和b的差集的并集)

{'r','d','b','m','z','l'}


内置函数


add()

为集合添加元素

set1={1,2,3}

set1.add(4)

print(set1)

{1, 2, 3, 4}


updata()

给集合添加元素

set1.update([5])

print(set1)   #update的参数不能是纯数字

{1, 2, 3, 4, 5}


copy()

拷贝一个集合(浅拷贝)

set2=set1.copy()

print(set2)

{1, 2, 3, 4, 5}


clear()

移除集合中的所有元素

set1.clear()

print(set1)

set()


discard()

删除集合中指定的元素

set3.discard(1)

print(set3)

{ 2, 3}


pop()

一般会删除第一个元素并且会有返回值

set3={1,2,3,4,5,6}

a=set3.pop()

print(a)

1

print(set3)

{2,3,4,5,6}


remove()

移除指定元素

set3.remove(4)

print(set3)

{2,3,4,5}


difference()

返回多个集合的差集

set3={1,2,3,4}

set4={4,5,6}

a=set3.difference(set4)

print(a)

{1, 2, 3}     #set3有,set4没有的元素


difference_update()

移除集合中的元素,该元素在指定的集合也存在。

set3.difference_update(set4)

print(set3)

{1, 2, 3}     #将difference()的运行结果赋给set3


intersection()

返回集合的交集

set5={1,2,3,4}

set6={3,4,5}

a=set5.intersection(set6)

print(a)

{3,4}   #set5有,set6也有的元素


intersection_update()

删除集合中的元素,该元素在指定的集合中不存在。

set5.intersection_update(set6)

print(set5)

{3,4}  #将 intersection()的运行结果赋给set5


symmetric_difference()

返回两个集合中不重复的元素集合。

set7={1,2,3,4}

set8={3,4,5}

a=set7.symmetric_difference(set8)

print(a)

{1,2,5}   #set7的差集和set8的差集的并集


symmetric_difference_update()

移除当前集合中在另外一个指定集合相同的元素,并将另外一个指定集合中不同的元素插入到当前集合中。

set7.symmetric_difference_update(set8)

print(set7)

{1,2,5}  # 将symmetric_difference()的运行结果赋给set7


isdisjoint()

判断两个集合是否包含相同的元素,如果没有返回 True,否则返回 False。

set9={1,2,3}

set10={4,5,6}

a=set9.isdisjoint(set10)

print(a)

True  #set9中的元素,set10一个也不能有


issubset()

判断指定集合是否为该方法参数集合的子集。

set9={1,5,6}

set10={1,2,3,4,5,6}

a=set9.issubset(set10)

print(a)

True   #set9中的元素,set10必须全有


issuperset()

判断该方法的参数集合是否为指定集合的子集

set9={1,2,3,4,5,6}

set10={4,5,6}

a=set9.issubset(set10)

print(a)

True     #issubset()的反义词




union()

返回两个集合的并集

set11={1,2,3,4}

set12={3,4,5}

a=set11.union(set12)

print(a)

{1, 2, 3, 4, 5}    #set11,set12  都有的不重复元素



最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 220,458评论 6 513
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 94,030评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 166,879评论 0 358
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,278评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,296评论 6 397
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 52,019评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,633评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,541评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 46,068评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,181评论 3 340
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,318评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,991评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,670评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,183评论 0 23
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,302评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,655评论 3 375
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,327评论 2 358

推荐阅读更多精彩内容