Breve lista
Lista: para almacenar cualquier número de cualquier tipo de conjunto de datos.
listado de secuencia variable se construye, ordenó espacio de memoria contiguo comprende una pluralidad de elementos. La lista define la sintaxis estándar:
a = [10,20,30,40]
Entre ellos, 10, 20, éstos son llamados: una lista de elementos.
Los elementos en la lista pueden ser diferentes, puede ser cualquier tipo. Por ejemplo:
a = [10,20,'abc',True]
Lista de objetos métodos comúnmente utilizados se resumen a continuación, para facilitar el aprendizaje y referencia.
método | puntos | descripción |
---|---|---|
list.insert (índice, x) | elementos add | Insertar el elemento x en la lista de la lista de índices ubicación especificada |
list.append (x) | Final de la lista de elementos se incrementa | Se añadirá a la lista de elementos de la lista de cola x |
lista.extend (aList) | Una lista de todos los elementos para el final de la lista B | La lista a-lista de todos los elementos de la cola de la lista de la lista |
list.remove (x) | La eliminación de los elementos | Eliminar la primera ocurrencia del elemento especificado en x en la lista |
list.pop ([índice]) | La eliminación de los elementos | Elimina y devuelve la lista hasta el elemento especificado en la lista de índices, el valor predeterminado es el último elemento |
list.clear () | Eliminar todos los elementos | Eliminar una lista de todos los elementos, no para eliminar la lista de objetos |
list.index (x) | elemento de acceso a | Devuelve la posición de índice x, x elemento produce una excepción si hay |
list.count (x) | contar | Devuelve el número de veces especificado elemento x aparece en la lista de la lista |
len (lista) | Longitud de los Listados | Devuelve el número de elementos en la lista contiene |
list.reverse () | lista de flip | Voltear todos los elementos en su lugar |
list.sort () | secuencia | Ordenar todos los elementos en su lugar |
list.copy () | copia superficial | Devuelve una lista de objetos de copia superficial |
list.deepcopy () | copia profunda | Devuelve una lista de objetos de copia profunda |
Cuerdas y listas son secuencias de tipo, una cadena es una secuencia de caracteres, una lista es una secuencia de cualquier elemento. Tengo
muchas maneras de aprender una serie de principios, en la lista tiene un uso similar es casi idéntica.
Crear una lista de
La sintaxis básica [] para crear
>>> a = [10,20,'gaoqi','sxt']
>>> a = [] #创建一个空的列表对象
list () para crear
Uso list () puede ser cualquier de datos se puede convertir en una lista de iteraciones.
>>> a = list() #创建一个空的列表对象
>>> a = list(range(10))
>>> a
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> a = list("gaoqi,sxt")
>>> a
['g', 'a', 'o', 'q', 'i', ',', 's', 'x', 't']
rango () para crear una lista de números enteros
rango () nos puede ayudar a crear muy fácilmente una lista de números enteros, que es extremadamente útil en el desarrollo. La sintaxis es:
Rango ([Inicio], Fin [, incremento])
Parámetros de inicio: opcional, representan los números iniciales. El valor por defecto es 0
parámetros final: obligatoria para indicar el final de la serie.
parámetros de paso: Alternativamente, representa el tamaño de paso de un defecto
en el intervalo de python3 () devuelve un rango objetivo, en lugar de una lista. Necesitamos a la lista () método de pasar
se convierte en una lista de objetos.
Un ejemplo típico es el siguiente:
>>> list(range(3,15,2))
[3, 5, 7, 9, 11, 13]
>>> list(range(15,3,-1))
[15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4]
>>> list(range(3,-10,-1))
[3, 2, 1, 0, -1, -2, -3, -4, -5, -6, -7, -8, -9]
Derivaciones generan una lista (una cuenta breve, con énfasis en hablar después de que el bucle for)
Puede ser muy fácil crear una lista usando listas por comprensión, a menudo usados en el desarrollo. Sin embargo, como se relaciona con el bucle
y si las declaraciones. En este caso, sólo se hará una introducción básica. En la parte de atrás de nuestras sentencias de control, vamos a explicar en detalle las listas por comprensión más detalles.
>>> a = [x*2 for x in range(5)] #循环创建多个元素
>>> a
[0, 2, 4, 6, 8]
>>> a = [x*2 for x in range(100) if x%9==0] #通过 if 过滤元素
>>> a
[0, 18, 36, 54, 72, 90, 108, 126, 144, 162, 180, 198]
Añade lista de elementos
Cuando el complemento y los elementos de borrado de la lista, la lista serán automáticamente la gestión de memoria, lo que reduce la carga sobre el programador. Sin embargo,
un gran número de características móviles implica un listado de elementos, menos eficientes. A menos que sea necesario, en general, sólo agregar elementos al final de la lista
de elementos o eliminar, que mejorarán en gran medida la eficacia operativa de la lista.
append () método
Modificar la lista de objetos in situ, es el verdadero fin de la lista para añadir nuevos elementos, el más rápido, recomendado.
>>> a = [20,40]
>>> a.append(80)
>>> a
[20, 40, 80]
+ Funciones de la operadora
En realidad, no la cola para agregar elementos, pero para crear una nueva lista de objetos, elementos de los elementos originales de la lista y la nueva lista a su vez
copiado en la nueva lista de objetos. De esta manera, implicará una gran cantidad de operaciones de copia, para operar, no se recomienda un gran número de elementos.
>>> a = [20,40]
>>> id(a)
46016072
>>> a = a+[50]
>>> id(a)
46015432
Con la prueba anterior, encontramos la dirección de una variable ha cambiado. Es decir, crear un nuevo objeto de lista.
extender método ()
Añadir todos los elementos de esta lista de objetivos a la cola de la lista, se encuentran en operación in situ, no crea un nuevo objeto de lista.
>>> a = [20,40]
>>> id(a)
46016072
>>> a.extend([50,60])
>>> id(a)
46016072
insert () inserto elementos
Uso de inserción () método se puede insertar en cualquier elemento especificado para desarrollar una posición de la lista de objetos. Esto hará que la posición de inserción de la
superficie de todos los elementos en movimiento, puede afectar a la velocidad de procesamiento. La participación de un gran número de elementos, tratar de evitar el uso. ocurrencia similares de tal
movimiento también funciones: remove (), POP () , del (), que se producirá después de la posición operativa cuando los elementos de arrastre eliminación no
elemento de superficie en movimiento.
>>> a = [10,20,30]
>>> a.insert(2,100)
>>> a
[10, 20, 100, 30]
multiplicación extendido
Uso de multiplicación lista ampliada, generar una nueva lista, la lista original de elementos repetidos de un nuevo elemento de la lista.
>>> a = ['sxt',100]
>>> b = a*3
>>> a
['sxt', 100]
>>> b
['sxt', 100, 'sxt', 100, 'sxt', 100]
Conveniente para la operación de multiplicación, así como: cuerda, una tupla. Por ejemplo:
>>> c = 'sxt'
>>> d = c*3
>>> c
'sxt'
>>> d
'sxtsxtsxt'
Eliminar elementos de la lista
borrar Borrar
Para borrar un elemento de la lista en el lugar.
>>> a = [100,200,888,300,400]
>>> del a[1]
>>> a
[100,200,300,400]
pop método ()
pop () elimina y vuelve la posición especificada del elemento, si no se especifica la ubicación, la lista de acciones por defecto último elemento.
>>> a = [10,20,30,40,50]
>>> a.pop()
50
>>> a
[10, 20, 30, 40]
>>> a.pop(1)
20
>>> a
[10, 30, 40]
método remove ()
Eliminar la primera ocurrencia del elemento especificado, si hay ese elemento se produce una excepción.
>>> a = [10,20,30,40,50,20,30,20,30]
>>> a.remove(20)
>>> a
[10, 30, 40, 50, 20, 30, 20, 30]
>>> a.remove(100)
Traceback (most recent call last):
File "<pyshell#208>", line 1, in <module>
a.remove(100)
ValueError: list.remove(x): x not in list
elementos de recuento de acceso y la lista
Acceso directo a través de un elemento de índice
Podemos acceder directamente a los elementos de índice. intervalo de Índice de [0, longitud de la lista -1] variar. Fuera de este rango el
se lanza una excepción.
>>> a = [10,20,30,40,50,20,30,20,30]
>>> a[2]
30
>>> a[10]
Traceback (most recent call last):
File "<pyshell#211>", line 1, in <module>
a[10]
IndexError: list index out of range
índice () para obtener el índice del elemento especificado en la lista por primera vez
index () puede obtener la posición de índice de la primera aparición del elemento especificado. La sintaxis es: índice (valor, [inicia, [final]]). Lo cual,
de inicio y fin especificar el alcance de la búsqueda.
>>> a = [10,20,30,40,50,20,30,20,30]
>>> a.index(20)
1
>>> a.index(20,3)
5
>>> a.index(20,3) #从索引位置 3 开始往后搜索的第一个 20
5
>>> a.index(30,5,7) #从索引位置 5 到 7 这个区间,第一次出现 30 元素的位置
6
count () para obtener el número especificado de elementos que aparecen en la lista
count () puede devolver el número especificado de elementos que aparecen en la lista.
>>> a = [10,20,30,40,50,20,30,20,30]
>>> a.count(20)
3
len () devuelve una lista de longitud
len () devuelve la longitud de la lista, es decir, el número de elementos incluidos en la lista.
>>> a = [10,20,30]
>>> len(a)
3
juicio de miembros
La determinación de si el elemento especificado de la lista, se puede utilizar el método de conteo (), devuelve 0 indica ausencia, regresa
más de 0 indica la presencia. Sin embargo, por lo general un uso más concisa de palabras clave para determinar, retorno directo Verdadero
o Falso.
>>> a = [10,20,30,40,50,20,30,20,30]
>>> 20 in a
True
>>> 100 not in a
True
>>> 30 not in a
False
rebanar
A medida que aprendemos en frente de la cadena, la cadena estudiada operación de corte, similar a la corte y una lista de cadenas.
Python y la rebanada es una secuencia de operaciones es importante para obtener una lista de tuplas, cuerdas y similares. rebanada formato es el siguiente:
la operación rebanada rebanada nos permite extraer rápidamente una sub-lista o modificar. El formato estándar es:
[start desplazamiento inicial: expiran a finales de desplazamiento [: paso PASO]]
NOTA: Cuando la etapa omitiendo puede ser omitido por la forma en la segunda de colon
La operación típica (una cantidad de tres número positivo) como sigue:
instrucciones de uso y | Ejemplos | resultado |
---|---|---|
[:] Para extraer toda la lista | [10,20,30] [:] | [10,20,30] |
[Inicio:] empezar desde el principio hasta el final del índice | [10,20,30] [1:] [20,30] | |
[: Fin] desde el principio know-1 final | [10,20,30] [: 2] | [10,20] |
[Inicio: fin] de principio a fin-1 | [10,20,30,40] [1: 3] | [20,30] |
[Inicio: Fin: paso] extraído de principio a fin-1, etapa a etapa | [10,20,30,40,50,60,70] [1: 6: 2] | [20, 40, 60] |
Otras operaciones (tres cantidad negativa) de procedimiento:
Ejemplos | explicación | resultado |
---|---|---|
[10,20,30,40,50,60,70] [- 3:] | tres recíproca | [50,60,70] |
10,20,30,40,50,60,70] [- 5: -3] | La quinta cuenta atrás para la antepenúltima (sin remolque cabecera) | [30,40] |
[10,20,30,40,50,60,70] [:: - 1] | Paso es negativo, el extracto inversa de derecha a izquierda | [70, 60, 50, 40, 30, 20, 10] |
Cuando la operación de corte, el desplazamiento de inicio y final de desplazamiento no es [0 longitud de cadena - 1] de este rango, no hay error será. La partida
de desplazamiento es menor que 0 como 0 terminará desplazamiento es mayor que la "longitud -1" será tratado como la "longitud -1". Por ejemplo:
>>> [10,20,30,40][1:30]
[20, 30, 40]
Se encontró que los resultados de salida normales, no hay ningún error.
A través de la lista de
for obj in listObj:
print(obj)
Copiar todos los elementos de la lista para una nueva lista de objetos
El siguiente código implementa una lista de elementos para copiarlo?
list1 = [30,40,50]
list2 = list1
Pero lista2 también apuntará a la lista de objetos, es decir lista1 y lista2 sostiene valores de dirección son los mismos, la lista de los objetos de este
elemento del cuerpo y no se copian.
por un método simple de conseguir que podemos copiar el contenido de los elementos de la lista:
list1 = [30,40,50]
list2 = [] + list1
Nota: El aprendizaje módulo de copia, utilizando una copia superficial o una copia profunda se dan cuenta de nuestra operación de copia.
lista ordenada
Modificar la lista original, no construir el tipo de la nueva lista
>>> a = [20,10,30,40]
>>> id(a)
46017416
>>> a.sort() #默认是升序排列
>>> a
[10, 20, 30, 40]
>>> a = [10,20,30,40]
>>> a.sort(reverse=True) #降序排列
>>> a
[40, 30, 20, 10]
>>> import random
>>> random.shuffle(a) #打乱顺序
>>> a
[20, 40, 30, 10]
ordenamiento construida nueva lista
También podemos clasificar a través de la función integrada de ordenadas (), este método devuelve una nueva lista, no modifique la lista original.
>>> a = [20,10,30,40]
>>> id(a)
46016008
>>> a = sorted(a) #默认升序
>>> a
[10, 20, 30, 40]
>>> id(a)
45907848
>>> a = [20,10,30,40]
>>> id(a)
45840584
>>> b = sorted(a)
>>> b
[10, 20, 30, 40]
>>> id(a)
45840584
>>> id(b)
46016072
>>> c = sorted(a,reverse=True) #降序
>>> c
[40, 30, 20, 10]
Por la operación anterior, podemos ver, la lista resultante de los objetos B y C son completamente nueva lista de objetos.
invertida () devuelve un iterador
Construido en función invertida () también es compatible con el orden inverso, con una lista de objetos atrás () método es diferente, una función de la función
inversa () no realizar ningún cambio en la lista original, pero devolver un objeto iterador en orden inverso.
>>> a = [20,10,30,40]
>>> c = reversed(a)
>>> c
<list_reverseiterator object at 0x0000000002BCCEB8>
>>> list(c)
[40, 30, 10, 20]
>>> list(c)
[]
Nuestros hallazgos sugieren que la impresión es c: list_reverseiterator
. Esto es un objeto iteración. Al mismo tiempo, usamos la
list(c)
salida, se encontró sólo una vez. El primer elemento de salida, el segundo está vacía. Eso es porque iteración objeto
la primera vez que ha atravesado terminado, el segundo no se puede utilizar
Lista de otra asociada Resumen funciones incorporadas
max y min
Se utiliza para devolver la lista de valores máximos y mínimos.
[40, 30, 20, 10]
>>> a = [3,10,20,15,9]
>>> max(a)
20
>>> min(a)
3
suma
Todos los elementos en la lista de operación de suma numérica se lleva a cabo, se dará la lista de cálculo no numérica.
>>> a = [3,10,20,15,9]
>>> sum(a)
57
Reproducido en: https://blog.csdn.net/weixin_43158056/article/details/92798505