Heim  >  Artikel  >  Backend-Entwicklung  >  Was ist das Konzept von Python-Sammlungen? Einführung in Python-Sammlungen

Was ist das Konzept von Python-Sammlungen? Einführung in Python-Sammlungen

不言
不言nach vorne
2018-10-09 16:08:584066Durchsuche

In diesem Artikel erfahren Sie, was das Konzept von Python-Sammlungen ist. Die Einführung in die Python-Sammlung hat einen gewissen Referenzwert. Ich hoffe, dass sie für Sie hilfreich ist.

Beschreibung der Menge

Eine Menge ist eine ungeordnete, sich nicht wiederholende Sammlung von Daten. Sie selbst ist veränderbar, aber die darin enthaltenen Elemente sind unveränderlicher Typ (Beachten Sie hier, dass selbst Tupel, die Listen enthalten, nicht zulässig sind, es müssen völlig unveränderliche Typen sein.)

Erstellen Sie eine Sammlung

Sie können geschweifte Klammern verwenden, um eine Sammlung zu erstellen { } wird zum Erstellen verwendet und die Elemente werden durch Kommas getrennt. Es kann jedoch nicht zum Erstellen einer leeren Sammlung verwendet werden, da {} ein leeres Wörterbuch erstellt.

如 set1 = {1,2,3}

Sie können auch die Funktion set() verwenden, um eine Sammlung zu erstellen, in der die Parameter iterierbare Objekte (wie Zeichenfolgen, Listen, Tupel, Iteratoren usw.) sind, vorausgesetzt, die Elemente müssen vom unveränderlichen Typ sein .

i = 'abcdefg'
a =set(i)
print(type(a))
print(a)
----------
<class &#39;set&#39;>
{'b', 'a', 'f', 'd', 'g', 'e', 'c'}

Update hinzufügen

add(elem)
kann der Sammlung ein neues Element hinzufügen, nicht wenn das Element bereits vorhanden ist. Machen alle Änderungen

s1 = {1,2,3}
s1.add('qwe')
print(s1)
----------
{1, 2, 3, 'qwe'}

update(*others)
Andere iterierbare Objekte (wie Strings, Listen, Tupel) zur Sammlung hinzufügen und doppelte Elemente automatisch entfernen

s1 = {1,2,3}
it = [3,4,5]
s1.update(it)
print(s1)
----------
{1, 2, 3, 4, 5}

delete remove(elem) Discard(elem) pop() clear()

remove(elem)
Elemente aus der Menge entfernen Wenn das Element dies tut nicht vorhanden ist, wird ein Fehler gemeldet.

s1 = {1,2,3}
s1.remove(2)
print(s1)
----------
{1, 3}

discard(elem)
Wie beim Entfernen können Sie Elemente aus der Sammlung löschen. Der Unterschied besteht darin, dass kein Fehler gemeldet wird, wenn das Element nicht vorhanden ist.

s1 = {1,2,3}
s1.discard(6)
print(s1)
----------
{1, 2, 3}

pop()
Ein Element nach dem Zufallsprinzip aus der Menge löschen und das Element zurückgeben. Wenn die Menge leer ist, wird ein Fehler gemeldet

s1 = {1,2,3}
a = s1.pop()
print(s1)
print(a)
----------
{2, 3}
1

clear ()
wird verwendet, um die Sammlung zu löschen.

Mehrere Betriebsmethoden

Es gibt mehrere Betriebsmethoden für Mengen: Schnittmenge, Vereinigung, Differenz, Anti-Schnittmenge, Teilmenge, Obermenge
Der folgende Code wird verwendet um die Verwendung jeder Methode im Detail zu erklären

s1 = {1,2,3,4,5}
s2 = {3,4,5,6,7}
print('交集:',s1 & s2) #可用&或者intersection,输出一个新的集合,包含共同拥有的元素
print('交集:',s1.intersection(s2))
print('并集:',s1 | s2) #可用|或者union,输出一个新的集合,包含两个集合中所有的元素(去重)
print('并集:',s1.union(s2))
print('差集:',s1 - s2) #可用 - 或者difference,输出一个新的集合,包含前一个集合中除去共有的元素
print('差集:',s1.difference(s2))
print('反交集:',s1 ^ s2) #可用^或者 symmetric_difference,输出一个新的集合,包含两个集合中除去共有的元素后剩余的所有元素
print('反交集:',s1.symmetric_difference(s2))
    交集: {3, 4, 5}
    交集: {3, 4, 5}
    并集: {1, 2, 3, 4, 5, 6, 7}
    并集: {1, 2, 3, 4, 5, 6, 7}
    差集: {1, 2}
    差集: {1, 2}
    反交集: {1, 2, 6, 7}
    反交集: {1, 2, 6, 7}

Teilmengen und Obermengen enthalten alle Elemente in einer anderen Menge. Die „große“ Menge wird als Obermenge bezeichnet, die „kleine“ Menge Teilmenge

s1 = {1,2,3}
s2 = {1,2,3,4,5}
print(s1.issubset(s2)) #输出为True,s1是s2的子集
print(s2.issuperset(s1))#输出为True,s2是s1的超集
----------
    True
    True

Darüber hinaus können Sie mit Frozenset('Set-Name') die Menge in eine unveränderliche Menge umwandeln

Das obige ist der detaillierte Inhalt vonWas ist das Konzept von Python-Sammlungen? Einführung in Python-Sammlungen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:segmentfault.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen