日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

set built-in function

發布時間:2024/4/17 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 set built-in function 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

集合類型

集合對象是一組無序排列的可哈希的值,集合可以作為字典的鍵。因為集合是無序的,不可以為集合創建索引或執行切片操作,也沒有鍵可以用來獲取元素的值。

集合有兩種不同的類型,可變集合和不可變集合。可變集合不是可哈希的值

集合類型中元素不可重復

?

創建集合類型的方法只有一個,就是集合的工廠方法set()和frozenste(),括號內的參數必須是可迭代的對象,例如一個文件或著一個字典

set('book')

>>>['b','k','o','o']

?

當進行集合類型的交集并集差集時,所產生的結果類型和左操作數的類型相同,例如:

?

s = set('continue') t = frozenset('break')v = s | t print(v) >>>{'o', 'u', 't', 'n', 'e', 'k', 'c', 'i', 'b', 'r', 'a'} print(type(v)) >>><class 'set'>      # 產生的類型和 s 的類型相同

?

?

dir(set):

['__and__', '__class__', '__contains__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__iand__', '__init__', '__ior__', '__isub__', '__iter__', '__ixor__', '__le__', '__len__', '__lt__', '__ne__', '__new__', '__or__', '__rand__', '__reduce__', '__reduce_ex__', '__repr__', '__ror__', '__rsub__', '__rxor__', '__setattr__', '__sizeof__', '__str__', '__sub__', '__subclasshook__', '__xor__', 'add', 'clear', 'copy', 'difference', 'difference_update', 'discard', 'intersection', 'intersection_update', 'isdisjoint', 'issubset', 'issuperset', 'pop', 'remove', 'symmetric_difference', 'symmetric_difference_update', 'union', 'update']

?

?

1.add(obj) 在集合中添加對象obj

?

?

s = set('book') s.add('shop') print(s)>>>{'o', 'k', 'shop', 'b'}

?

2.clear 刪除集合中的所有元素

s = set('book') s.clear() print(s)>>>set()

3.s.copy 返回一個新集合,它是集合s的淺復制

4.s.difference(t) ?返回一個新集合,該集合是s的成員,但不是t的成員,相當于s - t(差分操作)

s = set('book') t = set('shop') v = s.difference(t) print(v)>>>{'b', 'k'}

5.s.difference_update(t) s中的成員是屬于s但不包含在t中的元素,它與difference的區別在于difference會返回一個新集合,而它不會

s = set('book') t = set('shop') s.difference_update(t) print(s)>>>{'b', 'k'}

6.s.discard(obj) 如果obj是集合s中的元素。從集合s中刪除對象obj

s = set('book') s.discard('o') print(s)>>>{'k', 'b'}

7.s.intersection(t) 返回一個新集合,是s和t的交集,等價操作符 s & t

s = set('book') t = set('shop') v = s.intersection(t) print(v)>>>{'o'}

8.s.intersection_update(t) 和上面類似,只是不返回新集合

9.s.isdisjoint(t) 如果集合s和t沒用交集,返回True,否則返回False

s = set('book') t = set('shp') v = s.isdisjoint(t) print(v)>>>True

10.s.issubset(t) 如果s是t的子集,返回True,否則返回False

11.s.issuperset(t) 如果t是s的超集,返回True,否則返回False

s = set('bookshop') t = set('book') v = s.issuperset(t) print(v)>>>True

12.pop() 刪除集合中的任意一個對象,并返回它

s = set('bookshop') v = s.pop() print(v)>>>p # 不唯一,可以是s中任意一個對象

13.s.remove(obj) 刪除對象obj,如果集合里面沒有obj,則有keyerror錯誤

14.s.symmetric_difference(t) 返回以個新集合,該集合是s或t的成員,但不是s和t共有的成員。對稱差分操作,等價操作符是s ^ t

s = set('bookshop') t = set('break') v = s.symmetric_difference(t) print(v)>>>{'o', 'r', 'p', 'a', 'e', 'h', 's'}

15.s.symmetric_difference_update(t) 和上面類似,只是不返回新集合

16.union 并集,等價操作符是s | t

s = set('bookshop') t = set('break') v = s.union(t) print(v)>>>{'s', 'a', 'b', 'r', 'p', 'e', 'k', 'o', 'h'}

17.s.update(t) 用t中的元素修改s

s = set('bookshop') t = set('break') s.update(t) print(s)>>>{'p', 'e', 'r', 'b', 'o', 'k', 'h', 'a', 's'}

?

?

以上

?

轉載于:https://www.cnblogs.com/learnC/p/5963162.html

與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的set built-in function的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。