En primer lugar, el conjunto de definición
1.1 Definiciones: {} en la pluralidad de elementos separados por comas, inmutable tipo de elemento de datos, y disposición de los elementos son no ordenada.
Lista_1 = >>> [ ' Egon ' , ' MACHO ' , 18 es , [ ' Juego ' , ' Leer ' ]] >>> S = SET (lista_1) Rastreo (más reciente Última llamada): File " <. Pyshell 1 #> " , Línea 1. , en <Module1> S = SET (list_1) TypeError: tipo unhashable: ' Lista ' >>> elemento debe ser impulsó a establecer un hash, es decir, tipo inmutable
1.2 son colección desordenada de elementos, y no se repite
>>> lista1 = [1,1,2,2,3,3 ] >>> s = conjunto (lista1) >>> print (s) { 1, 2, 3 } >>>
Nota: s = {} diccionario por defecto está vacía
1.3 Conversión de tipos
Colección se puede convertir en iterables de unión, pero si el objeto es un tipo de contenedor puede iteración, entonces los iterables elemento hijo debe ser inmutable tipo de datos
1.4 incorporado en el método
(1) en la intersección s1 y s2
friends1 = { " CERO " , " Kevin " , " Jason " , " Egon " } # amigos son usuarios 1 friends2 = { " de Jy " , " Ricky " , " Jason " , " Egon " } # usuario 2 amigos están = & friends1 RES friends2 RES = friends1.intersection (friends2) Imprimir (RES) { ' Egon ', 'Jason ' }
(2) tomado y conjunto s1 | s2
friends1 = { " CERO " , " Kevin " , " Jason " , " Egon " } # amigos son usuarios 1 friends2 = { " de Jy " , " Ricky " , " Jason " , " Egon " } # usuario 2 amigos están = friends1 RES | friends2 RES = friends1.union (friends2) Imprimir (RES) { ' Egon ' ,'Kevin ' ' Ricky ' ' Jy ' ' cero ' ' Jason ' }
(3) de llevar el aparato s1 diferencia - s2 o s1.difference (s2)
Tome único amigo f1
friends1 = { " CERO " , " Kevin " , " Jason " , " Egon " } # amigos son usuarios 1 friends2 = { " de Jy " , " Ricky " , " Jason " , " Egon " } # usuario 2 amigos están = friends1 RES - friends2 RES = friends1.difference (friends2) Imprimir (RES) { ' Kevin ', 'cero ' }
Tome único amigo f2
friends1 = { " CERO " , " Kevin " , " Jason " , " Egon " } # amigos son usuarios 1 friends2 = { " de Jy " , " Ricky " , " Jason " , " Egon " } # usuario 2 amigos están = friends2 RES - friends1 RES = friends1.symmetric_difference (friends2) Imprimir (RES) { ' Ricky ',' Usted ' }
(4) simétrica diferencia f1 f2 ^
friends1 = { " CERO " , " Kevin " , " Jason " , " Egon " } # amigos son usuarios 1 friends2 = { " de Jy " , " Ricky " , " Jason " , " Egon " } # usuario 2 amigos están ^ = friends2 RES friends1 Imprimir (RES) { ' Kevin ' , ' de Jy ' ,' ricky' ' Cero ' }
(5) un subconjunto de los padres (que comprende Relaciones)
l, 2,3 = {S1 } S2 = {1, 2,4 } # ninguna relación de inclusión, los siguientes son comparativo False Imprimir (s1.issuperset (S2)) Imprimir (S1> S2) Imprimir (S1 <S2)
l, 2,3 = {s1 } s2 = {1,2 } Imprimir (s1.issubset (s2)) Imprimir (s1> s2) # Cuando S1 es mayor que o igual a s2, s1 es decir el padre s2
l, 2,3 = {S1 } s2 = {l, 2,3 } de impresión (S1 == s2) # S1 y S2 entre sí Sons
1.4 deduplicación
Nota: 1, solo en los tipos inmutables deduplicación
2, no puede garantizar que la orden original
l = [1, ' un ' , ' b ' , 1,1,2,3 ] l = lista (conjunto (l)) de impresión (l) [ 1, 2, 3, ' un ' , ' b ' ]
1.5 Otros incorporado en el método
(1) de descarte
l, 2,3 = {S } s.discard ( . 4) # eliminar el elemento no existe, no hacer nada de impresión (S)
eliminar
l, 2,3 = {S } s.remove ( . 4) # no existen elementos de remover, un error de impresión (S)
popular
>>> s = {1,2,3 } >>> res = s.pop () >>> de impresión (res) 1 >>>
(2) la actualización
S = {l, 2,3 >>> } >>> s.update ([4,5,6 ]) >>> Imprimir (S) { . 1, 2 ,. 3 ,. 4 ,. 5 ,. 6 } >>> s.update ([7, [8, 9 son. ]]) Rastreo (más reciente Última llamada): File " <pyshell # 16> " ., Línea 1, en <Módulo1> s.update ([ . 7, [8, 9 son ] ]) TypeError: tipo unhashable: ' Lista ' >>> elemento hijo del objeto de destino debe ser un hash de tipos de datos (es decir, tipo de datos inmutable)
(3) Añadir
s = {1,2,3 } s.add ( 4 ) de impresión (res)
Otros métodos para comprender