11 secuencia

Reimpreso de la biblioteca de aprendizaje de código abierto de Datawhale

https://github.com/datawhalechina/team-learning-program/tree/master/PythonLanguage

secuencia

En Python, los tipos de secuencia incluyen cadenas, listas, tuplas, conjuntos y diccionarios. Estas secuencias admiten algunas operaciones comunes, pero lo que es más especial es que los conjuntos y diccionarios no admiten operaciones de indexación, división, suma y multiplicación.

1. Funciones integradas para secuencias

  • list(sub) Convierta un objeto iterable en una lista.

【ejemplo】

a = list()
print(a)  # []

b = 'I Love LsgoGroup'
b = list(b)
print(b)  
# ['I', ' ', 'L', 'o', 'v', 'e', ' ', 'L', 's', 'g', 'o', 'G', 'r', 'o', 'u', 'p']

c = (1, 1, 2, 3, 5, 8)
c = list(c)
print(c)  # [1, 1, 2, 3, 5, 8]
  • tuple(sub) Convierta un objeto iterable en una tupla.

【ejemplo】

a = tuple()
print(a)  # ()

b = 'I Love LsgoGroup'
b = tuple(b)
print(b)  
# ('I', ' ', 'L', 'o', 'v', 'e', ' ', 'L', 's', 'g', 'o', 'G', 'r', 'o', 'u', 'p')

c = [1, 1, 2, 3, 5, 8]
c = tuple(c)
print(c)  # (1, 1, 2, 3, 5, 8)
  • str(obj) Convertir objeto obj en cadena

【ejemplo】

a = 123
a = str(a)
print(a)  # 123
  • len(s) Devuelve la longitud del objeto (carácter, lista, tupla, etc.) o el número de elementos.
    • s - Objeto.

【ejemplo】

a = list()
print(len(a))  # 0

b = ('I', ' ', 'L', 'o', 'v', 'e', ' ', 'L', 's', 'g', 'o', 'G', 'r', 'o', 'u', 'p')
print(len(b))  # 16

c = 'I Love LsgoGroup'
print(len(c))  # 16
  • max(sub)Devuelve el valor máximo en la secuencia o conjunto de parámetros

【ejemplo】

print(max(1, 2, 3, 4, 5))  # 5
print(max([-8, 99, 3, 7, 83]))  # 99
print(max('IloveLsgoGroup'))  # v
  • min(sub)Devuelve el valor mínimo en la secuencia o conjunto de parámetros

【ejemplo】

print(min(1, 2, 3, 4, 5))  # 1
print(min([-8, 99, 3, 7, 83]))  # -8
print(min('IloveLsgoGroup'))  # G
  • sum(iterable[, start=0])Devuelve la suma de la secuencia iterabley los parámetros opcionales start.

【ejemplo】

print(sum([1, 3, 5, 7, 9]))  # 25
print(sum([1, 3, 5, 7, 9], 10))  # 35
print(sum((1, 3, 5, 7, 9)))  # 25
print(sum((1, 3, 5, 7, 9), 20))  # 45
  • sorted(iterable, key=None, reverse=False) Ordene todos los objetos iterables.
    • iterable - Objetos iterables.
    • key - Se utiliza principalmente para comparar los elementos. Solo hay un parámetro. Los parámetros de la función específica se toman del objeto iterable y especifican un elemento en el objeto iterable para su clasificación.
    • reverse-Reglas de clasificación, reverse = Trueorden descendente , orden reverse = Falseascendente (predeterminado).
    • Regrese a la lista reordenada.

【ejemplo】

x = [-8, 99, 3, 7, 83]
print(sorted(x))  # [-8, 3, 7, 83, 99]
print(sorted(x, reverse=True))  # [99, 83, 7, 3, -8]

t = ({
    
    "age": 20, "name": "a"}, {
    
    "age": 25, "name": "b"}, {
    
    "age": 10, "name": "c"})
x = sorted(t, key=lambda a: a["age"])
print(x)
# [{'age': 10, 'name': 'c'}, {'age': 20, 'name': 'a'}, {'age': 25, 'name': 'b'}]
  • reversed(seq) La función devuelve un iterador invertido.
    • seq - La secuencia a convertir puede ser tupla, cadena, lista o rango.

【ejemplo】

s = 'lsgogroup'
x = reversed(s)
print(type(x))  # <class 'reversed'>
print(x)  # <reversed object at 0x000002507E8EC2C8>
print(list(x))
# ['p', 'u', 'o', 'r', 'g', 'o', 'g', 's', 'l']

t = ('l', 's', 'g', 'o', 'g', 'r', 'o', 'u', 'p')
print(list(reversed(t)))
# ['p', 'u', 'o', 'r', 'g', 'o', 'g', 's', 'l']

r = range(5, 9)
print(list(reversed(r)))
# [8, 7, 6, 5]

x = [-8, 99, 3, 7, 83]
print(list(reversed(x)))
# [83, 7, 3, 99, -8]
  • enumerate(sequence, [start=0])

[Ejemplo] Se utiliza para combinar un objeto de datos transitable (como una lista, tupla o cadena) en una secuencia de índice y listar datos y subíndices de datos al mismo tiempo. Generalmente se utiliza en un bucle for.

seasons = ['Spring', 'Summer', 'Fall', 'Winter']
a = list(enumerate(seasons))
print(a)  
# [(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')]

b = list(enumerate(seasons, 1))
print(b)  
# [(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')]

for i, element in a:
    print('{0},{1}'.format(i, element))
# 0,Spring
# 1,Summer
# 2,Fall
# 3,Winter
  • zip(iter1 [,iter2 [...]])
    • Se utiliza para tomar el objeto iterable como parámetro, empaquetar los elementos correspondientes en el objeto en una tupla y luego devolver el objeto compuesto por estas tuplas La ventaja de esto es que ahorra mucha memoria.
    • Podemos usar el list()convertidor para generar la lista.
    • Si el número de elementos de cada iterador es inconsistente, la longitud más corta de la lista y devuelve el mismo objeto, utilizando el *número de operadores, las tuplas extraerán la lista.

【ejemplo】

a = [1, 2, 3]
b = [4, 5, 6]
c = [4, 5, 6, 7, 8]

zipped = zip(a, b)
print(zipped)  # <zip object at 0x000000C5D89EDD88>
print(list(zipped))  # [(1, 4), (2, 5), (3, 6)]
zipped = zip(a, c)
print(list(zipped))  # [(1, 4), (2, 5), (3, 6)]

a1, a2 = zip(*zip(a, b))
print(list(a1))  # [1, 2, 3]
print(list(a2))  # [4, 5, 6]

Preguntas de práctica :

  1. ¿Cómo encontrar el valor más grande y más pequeño de la secuencia?
  2. La diferencia entre sort () y sorted ()
  3. ¿Cómo sumar rápidamente todos los números enteros del 1 al 100?
  4. Encuentre la raíz cúbica de cada elemento en la lista [2,3,4,5].
  5. Convierta ['x', 'y', 'z'] y [1,2,3] a la forma [('x', 1), ('y', 2), ('z', 3)].

Practique respuestas personales :

11 ejercicios

11,1

list1 = [12,23,45,6,4,3,90]
print(max(list1))
print(min(list1))
90
3

11,2

help(list.sort)
Help on method_descriptor:

sort(self, /, *, key=None, reverse=False)
    Sort the list in ascending order and return None.
    
    The sort is in-place (i.e. the list itself is modified) and stable (i.e. the
    order of two equal elements is maintained).
    
    If a key function is given, apply it once to each list item and sort them,
    ascending or descending, according to their function values.
    
    The reverse flag can be set to sort in descending order.
help(sorted)
Help on built-in function sorted in module builtins:

sorted(iterable, /, *, key=None, reverse=False)
    Return a new list containing all items from the iterable in ascending order.
    
    A custom key function can be supplied to customize the sort order, and the
    reverse flag can be set to request the result in descending order.

11,3

print(sum(range(1,101)))
sum_values = 0
for i in range(1,101):
    sum_values += i
print(sum_values)
5050
5050

11,4

for i in [2,3,4,5,8]:
    print(i**(1/3))
1.2599210498948732
1.4422495703074083
1.5874010519681994
1.7099759466766968
2.0

11,5

print(list(zip(['x','y','z'],[1,2,3])))
[('x', 1), ('y', 2), ('z', 3)]

Supongo que te gusta

Origin blog.csdn.net/Han_Panda/article/details/113092609
Recomendado
Clasificación