WORDPRESS

Comprueba la longitud de una lista en Python en 3 sencillos pasos

En este artículo, seguiremos algunos pasos simples para comprender cómo verificar la longitud de una lista y analizar cuál es mejor.

¿Qué es una lista de Python?

La lista es una colección de arreglos en Python que puede almacenar varios tipos de datos. Puede almacenar números enteros, flotantes, cadenas, booleanos e incluso listas en listas.

int_list = [1, 2, 3, 4, 5]

print(int_list) # output -> [1, 2, 3, 4, 5]

float_list = [1.1, 2.2, 3.3, 4.4, 5.5]

print(float_list) # output -> [1.1, 2.2, 3.3, 4.4, 5.5]

string_list = ['Geekflare', 'Cloudflare', 'Amazon']

print(string_list) # output -> ['Geekflare', 'Cloudflare', 'Amazon']

boolean_list = [True, False]

print(boolean_list) # output -> [True, False]

nested_list = [[1, 2], [1.1, 2.2], ['Geekflare', 'Cloudflare'], [True, False]]

print(nested_list) # [[1, 2], [1.1, 2.2], ['Geekflare', 'Cloudflare'], [True, False]]

different_datatype_list = [1, 1.1, 'Geekflare', True, [1, 1.1, 'Geekflare', True]]

print(different_datatype_list) # output -> [1, 1.1, 'Geekflare', True, [1, 1.1, 'Geekflare', True]]

Las listas de Python se pueden crear usando corchetes o el constructor de listas.

square_bracket_list = [1, 1.1, 'Geekflare', True, [1, 1.1, 'Geekflare', True]]

print(square_bracket_list) # output -> [1, 1.1, 'Geekflare', True, [1, 1.1, 'Geekflare', True]]

constructor_list = list((1, 1.1, 'Geekflare', True, [1, 1.1, 'Geekflare', True]))

print(constructor_list) # output -> [1, 1.1, 'Geekflare', True, [1, 1.1, 'Geekflare', True]]

encima lista_de_corchetes es una lista creada con corchetes ([]), Lista de constructores es una lista creada usando el constructor de listas. Ambos solo producen la misma salida de lista.

La lista se puede cambiar, se permiten duplicados dentro de ella y se puede acceder a ella mediante el índice.

Cómo encontrar la longitud de una lista

  • función incorporada len()
  • método length_hint del operador
  • Funciones personalizadas y contadores
Artículo Recomendado:  APLICACIÓN web para PWA usando notificaciones push de firebase-Development -

Método 1: función integrada len()

len() es una función incorporada de Python para encontrar la longitud de una lista y también para otros iterables como Set, Tuples, Dictionary.

Fragmento de ejemplo

languages = ['Python', 'Java', 'C++', 'PHP', 'nodeJS']

languages_length = len(languages)

print('Length of the Language List is: ',languages_length)

producción

Length of the Language List is:  5

Espero que tengas Python instalado, si no, puedes usar el compilador de Python en línea para practicar el código.

Método 2: el método length_hint del operador

sugerencia de longitud Se utiliza para devolver la longitud de un objeto iterable (por ejemplo, Lista, Conjunto, Tuplas, Diccionario). Está disponible en el módulo de operador de python. No disponible como otros operadores integrados.

Fragmento de ejemplo

import operator

languages = ['Python', 'Java', 'C++', 'PHP', 'nodeJS']

languages_length = operator.length_hint(languages)

print('Length of the Language List using Operator is: ',languages_length)

producción

Length of the Language List using Operator is:  5

Método 3: función personalizada y contador

En este método de encontrar la longitud de una Lista, usaremos el método tradicional, usando bucle for y contador.

Para hacer esto, escribiremos una función en python. Toma una lista u otro iterable como parámetro y devuelve la longitud del iterable.

fragmento de función personalizada

def iterable_count(iterable):
  length = 0
  for item in iterable:
    length+=1
  return length

Fragmento de ejemplo

def iterable_count(iterable):
  length = 0
  for item in iterable:
    length+=1
  return length

languages = ['Python', 'Java', 'C++', 'PHP', 'nodeJS']

languages_length = iterable_count(languages)

print('Length of the Language List using Custom function is: ',languages_length)

producción

Length of the Language List using Custom function is:  5

Analiza estos 3 métodos

Análisis de rendimiento de listas grandes

import timeit # for benchmarking & profiling
import operator

def iterable_count(iterable):
  length = 0
  for item in iterable:
    length+=1
  return length

integer_list = list(range(1, 9999999))

#length check using len()
start_time = timeit.default_timer()
len_length = len(integer_list)
print(timeit.default_timer() - start_time, 'Length of the Integer List using len() is: ',len_length)

#length check using operator.length_hint
start_time = timeit.default_timer()
len_length = operator.length_hint(integer_list)
print(timeit.default_timer() - start_time, 'Length of the Integer List using length_hint is: ',len_length)

start_time = timeit.default_timer()
iterable_count_length = iterable_count(integer_list)
print(timeit.default_timer() - start_time, 'Length of the Integer List using Custom function is: ',iterable_count_length)

producción

3.957189619541168e-06 Length of the Integer List using len() is:  9999998
3.0621886253356934e-06 Length of the Integer List using length_hint is:  9999998
0.4059128537774086 Length of the Integer List using Custom function is:  9999998

como podemos ver sugerencia de longitud darse prisa(3.0621886253356934e-06) cuando los datos están en millones. Esto se debe a que el tiempo de ejecución de CPython usa sugerencias de longitud. Se llama envoltura de Python.

Análisis de rendimiento de listas pequeñas

import timeit # for benchmarking & profiling
import operator

def iterable_count(iterable):
  length = 0
  for item in iterable:
    length+=1
  return length

integer_list = list(range(1, 100))

#length check using len()
start_time = timeit.default_timer()
len_length = len(integer_list)
print(timeit.default_timer() - start_time, 'Length of the Integer List using len() is: ',len_length)

#length check using operator.length_hint
start_time = timeit.default_timer()
len_length = operator.length_hint(integer_list)
print(timeit.default_timer() - start_time, 'Length of the Integer List using length_hint is: ',len_length)

start_time = timeit.default_timer()
iterable_count_length = iterable_count(integer_list)
print(timeit.default_timer() - start_time, 'Length of the Integer List using Custom function is: ',iterable_count_length)

producción

7.813796401023865e-07 Length of the Integer List using len() is:  99
1.1278316378593445e-06 Length of the Integer List using length_hint is:  99
3.462657332420349e-06 Length of the Integer List using Custom function is:  99

como podemos ver longitud() darse prisa(7.813796401023865e-07) cuando los datos son miles o menos.

En ambos casos, nuestra función personalizada con un contador lleva más tiempo que cualquier enfoque.

En conclusión

En este artículo, aprendimos sobre las diferentes formas de verificar la longitud de la lista y cómo pueden verificar rápidamente la longitud de la lista.

Artículo Recomendado:  ¿Cómo proteger WordPress de ataques DDoS?

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *