#éåçå
³ç³»
##å»ç»çéå
åé¢[ä¸è讲述äºéåçåºæ¬æ¦å¿µ](./123.md)ï¼æ³¨æï¼é£éææ¶åå°çéå齿¯å¯åå¤ä¿®æ¹çéåãè¿æä¸ç§éåï¼ä¸è½å¨åå¤ä¿®æ¹ãè¿ç§éåçåå»ºæ¹æ³æ¯ï¼
>>> f_set = frozenset("qiwsir") #çè¿ä¸ªååå°±ç¥éäºfrozenï¼å»ç»çset
>>> f_set
frozenset(['q', 'i', 's', 'r', 'w'])
>>> f_set.add("python") #æ¥é
Traceback (most recent call last):
File "", line 1, in
AttributeError: 'frozenset' object has no attribute 'add'
>>> a_set = set("github") #对æ¯çä¸çï¼è¿æ¯ä¸ä¸ªå¯ä»¥åå¤ä¿®æ¹çset
>>> a_set
set(['b', 'g', 'i', 'h', 'u', 't'])
>>> a_set.add("python")
>>> a_set
set(['b', 'g', 'i', 'h', 'python', 'u', 't'])
##éåè¿ç®
å
å¤ä¹ ä¸ä¸ä¸å¦æ°å¦ï¼å确说æ¯é«ä¸æ°å¦ä¸çä¸ç¹ç¥è¯ï¼ä¸å
³äºéåçä¸ç¹ç¥è¯ï¼ä¸»è¦æ¯å¤èµ·é£çè¦èéæ¶©ç¾ä¸½çåå¿å§ï¼è³å°å¯¹ææ¯ã
###å
ç´ ä¸éåçå
³ç³»
å
ç´ æ¯å¦å±äºæä¸ªéåã
>>> aset
set(['h', 'o', 'n', 'p', 't', 'y'])
>>> "a" in aset
False
>>> "h" in aset
True
###éåä¸éåççº ç»
å设两个éåAãB
- Aæ¯å¦çäºBï¼å³ä¸¤ä¸ªéåçå
ç´ å®å
¨ä¸æ ·
å¨äº¤äºæ¨¡å¼ä¸å®éª
>>> a
set(['q', 'i', 's', 'r', 'w'])
>>> b
set(['a', 'q', 'i', 'l', 'o'])
>>> a == b
False
>>> a != b
True
- Aæ¯å¦æ¯Bçåéï¼æè
åè¿æ¥ï¼Bæ¯å¦æ¯Açè¶
éãå³Açå
ç´ ä¹é½æ¯Bçå
ç´ ï¼ä½æ¯Bçå
ç´ æ¯Açå
ç´ æ°éå¤ã
å®éªä¸ä¸
>>> a
set(['q', 'i', 's', 'r', 'w'])
>>> c
set(['q', 'i'])
>>> c>> c.issubset(a) #æè
ç¨è¿ç§æ¹æ³ï¼å¤æcæ¯å¦æ¯açåé
True
>>> a.issuperset(c) #夿aæ¯å¦æ¯cçè¶
é
True
>>> b
set(['a', 'q', 'i', 'l', 'o'])
>>> a>> a.issubset(b) #æè
è¿æ ·å
False
- AãBçå¹¶éï¼å³AãBææå
ç´ ï¼å¦ä¸å¾æç¤º

>>> a
set(['q', 'i', 's', 'r', 'w'])
>>> b
set(['a', 'q', 'i', 'l', 'o'])
>>> a | b #å¯ä»¥æä¸¤ç§æ¹å¼ï¼ç»æä¸æ ·
set(['a', 'i', 'l', 'o', 'q', 's', 'r', 'w'])
>>> a.union(b)
set(['a', 'i', 'l', 'o', 'q', 's', 'r', 'w'])
- AãBç交éï¼å³AãBæå
¬æçå
ç´ ï¼å¦ä¸å¾æç¤º

>>> a
set(['q', 'i', 's', 'r', 'w'])
>>> b
set(['a', 'q', 'i', 'l', 'o'])
>>> a & b #ä¸¤ç§æ¹å¼ï¼çä»·
set(['q', 'i'])
>>> a.intersection(b)
set(['q', 'i'])
æå¨å®éªçæ¶åï¼é¡ºææ²äºä¸é¢ç代ç ï¼åºç°çç»æå¦ä¸ï¼çå®è½è§£éä¸ä¸åï¼ï¼æèé¢ï¼
>>> a and b
set(['a', 'q', 'i', 'l', 'o'])
- Aç¸å¯¹Bçå·®ï¼è¡¥ï¼ï¼å³Aç¸å¯¹Bä¸åçé¨åå
ç´ ï¼å¦ä¸å¾æç¤º

>>> a
set(['q', 'i', 's', 'r', 'w'])
>>> b
set(['a', 'q', 'i', 'l', 'o'])
>>> a - b
set(['s', 'r', 'w'])
>>> a.difference(b)
set(['s', 'r', 'w'])
-AãBç对称差éï¼å¦ä¸å¾æç¤º

>>> a
set(['q', 'i', 's', 'r', 'w'])
>>> b
set(['a', 'q', 'i', 'l', 'o'])
>>> a.symmetric_difference(b)
set(['a', 'l', 'o', 's', 'r', 'w'])
以䏿¯éåçåºæ¬è¿ç®ãå¨ç¼ç¨ä¸ï¼å¦æç¨å°ï¼å¯ä»¥ç¨åé¢è¯´çæ¹æ³æ¥æ¾ãä¸ç¨æ»è®°ç¡¬èã