Maison  >  Article  >  développement back-end  >  Quel est le concept des collections Python ? Introduction aux collections Python

Quel est le concept des collections Python ? Introduction aux collections Python

不言
不言avant
2018-10-09 16:08:584069parcourir

Ce que cet article vous apporte, c'est quel est le concept des collections Python ? L'introduction des collections Python a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer, j'espère que cela vous sera utile.

Description de l'ensemble

Un ensemble est une collection de données non ordonnée et non répétitive. Il est lui-même mutable, mais les éléments à l'intérieur sont de type immuable (. notez ici, même les tuples contenant des listes ne sont pas autorisés, ils doivent être de types complètement immuables)

Créer une collection

Vous pouvez utiliser des accolades pour créer une collection {} est utilisé pour créer et les éléments sont séparés par des virgules, mais il ne peut pas être utilisé pour créer une collection vide, car {} crée un dictionnaire vide.

如 set1 = {1,2,3}

Vous pouvez également utiliser la fonction set() pour créer un ensemble, où les paramètres sont des objets itérables (tels que des chaînes, des listes, des tuples, des itérateurs, etc.), à condition que les éléments doivent être Types immuables.

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

add update

add(elem)
peut ajouter un nouvel élément à la collection si l'élément existe déjà Non des modifications seront apportées

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

update(*others)
D'autres objets itérables (tels que des chaînes, des listes, des tuples) peuvent être ajoutés automatiquement à la collection Supprimer les éléments en double

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

supprimer supprimer(elem) jeter(elem) pop() clear()

supprimer(elem)
Supprimer le élément de la collection. Si l’élément n’existe pas, une erreur sera signalée.

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

discard(elem)
peut supprimer des éléments de la collection tout comme delete. La différence est que si l'élément n'existe pas, aucune erreur ne sera signalée.

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

pop()
Supprimez aléatoirement un élément de l'ensemble et renvoyez l'élément Si l'ensemble est vide, une erreur sera signalée

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

clear()
est utilisé pour effacer la collection.

Plusieurs modes opératoires

Il existe plusieurs modes opératoires pour les ensembles : intersection, union, différence, anti-intersection, sous-ensemble, surensemble
Ce qui suit utilise du code pour expliquer l'utilisation de chaque méthode en détail

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}

Sous-ensembles et surensembles En termes simples, les éléments d'un ensemble contiennent tous les éléments d'un autre ensemble, puis les « grands » ensembles sont appelés surensembles. et les "petits" ensembles sont appelés sous-ensembles

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

De plus, en utilisant Frozenset('set name'), vous pouvez transformer l'ensemble en un ensemble immuable

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer