Heim  >  Artikel  >  Backend-Entwicklung  >  Python-Set-Typ-Operationen und Schnittmenge

Python-Set-Typ-Operationen und Schnittmenge

高洛峰
高洛峰Original
2017-03-01 13:56:041809Durchsuche

Inhalt lesen

•Einführung
•Grundoperationen
•Funktionsoperationen

Einführung

Pythons Menge ist eine ungeordnete Menge sich nicht wiederholender Elemente. Zu ihren Grundfunktionen gehören Beziehungstests und die Eliminierung doppelter Elemente. Außerdem unterstützen sie Vereinigung, Schnittmenge, Differenz, symmetrische Differenz usw.

sets unterstützt x in set, len(set) und for x in set. Da es sich um eine ungeordnete Sammlung handelt, zeichnen Sets keine Elementpositionen oder Einfügepunkte auf. Daher unterstützen Sets keine Indizierung, Slicing oder andere sequenzähnliche Vorgänge.

Grundoperationen

>>> x = set("jihite")
>>> y = set(['d', 'i', 'm', 'i', 't', 'e'])
>>> x    #把字符串转化为set,去重了
set(['i', 'h', 'j', 'e', 't'])
>>> y
set(['i', 'e', 'm', 'd', 't'])
>>> x & y  #交
set(['i', 'e', 't'])
>>> x | y  #并
set(['e', 'd', 'i', 'h', 'j', 'm', 't'])
>>> x - y  #差
set(['h', 'j'])
>>> y - x
set(['m', 'd'])
>>> x ^ y  #对称差:x和y的交集减去并集
set(['d', 'h', 'j', 'm'])

Funktionsoperationen

>>> x
set(['i', 'h', 'j', 'e', 't'])
>>> s = set("hi")
>>> s
set(['i', 'h'])
>>> len(x)          #长度

>>> 'i' in x
True
>>> s.issubset(x)       #s是否为x的子集
True
>>> y
set(['i', 'e', 'm', 'd', 't'])
>>> x.union(y)        #交
set(['e', 'd', 'i', 'h', 'j', 'm', 't'])
>>> x.intersection(y)     #并
set(['i', 'e', 't'])
>>> x.difference(y)      #差
set(['h', 'j'])
>>> x.symmetric_difference(y) #对称差
set(['d', 'h', 'j', 'm'])
>>> s.update(x)        #更新s,加上x中的元素
>>> s
set(['e', 't', 'i', 'h', 'j'])
>>> s.add(1)         #增加元素
>>> s
set([1, 'e', 't', 'i', 'h', 'j'])
>>> s.remove(1)        #删除已有元素,如果没有会返回异常
>>> s
set(['e', 't', 'i', 'h', 'j'])
>>> s.remove(2)

Traceback (most recent call last):
 File "<pyshell#29>", line 1, in <module>
  s.remove(2)
KeyError: 2
>>> s.discard(2)        #如果存在元素,就删除;没有不报异常
>>> s
set([&#39;e&#39;, &#39;t&#39;, &#39;i&#39;, &#39;h&#39;, &#39;j&#39;])
>>> s.clear()         #清除set
>>> s
set([])
>>> x
set([&#39;i&#39;, &#39;h&#39;, &#39;j&#39;, &#39;e&#39;, &#39;t&#39;])
>>> x.pop()          #随机删除一元素
&#39;i&#39;
>>> x
set([&#39;h&#39;, &#39;j&#39;, &#39;e&#39;, &#39;t&#39;])
>>> x.pop()
&#39;h&#39;

Der obige Artikel geht kurz auf die Funktionsweise und Schnittmenge des Python-Set-Typs ein, bei dem es sich um den gesamten gemeinsam genutzten Inhalt handelt vom Herausgeber mit Ihnen, ich hoffe, dass es Ihnen eine Referenz geben kann, und ich hoffe auch, dass jeder die chinesische PHP-Website unterstützt.

Weitere Python-Set-Typ-Operationen und verwandte Artikel finden Sie auf der chinesischen PHP-Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn