
In Python, funzione incorporata len() restituisce la lunghezza (numero di elementi, caratteri, ecc.) di oggetti di vario tipo, come elenchi, stringhe, dizionari, ecc.
In questo articolo vengono descritti i seguenti contenuti.
- Ottieni il numero di elementi nell’elenco con len()
- Ottieni il numero di elementi nella tupla con len()
- Ottieni il numero di elementi nel set con len()
- Ottieni il numero di elementi in dict con len()
- Ottieni il numero di caratteri in str con len()
- len() per numpy.ndarray
- len() per pandas.DataFrame e pandas.Series
- len() per i numeri (int, float, ecc.)
Ottieni il numero di elementi nell’elenco con len()
Se list viene passato a len(), viene restituito il numero di elementi.
l = [0, 1, 2]
print(len(l))
# 3
Vedere il seguente articolo per maggiori dettagli, incluso il caso degli elenchi bidimensionali (elenchi di elenchi).
Ottieni il numero di elementi nella tupla con len()
Se tuple viene passato a len(), viene restituito il numero di elementi.
t = (0, 1, 2)
print(len(t))
# 3
Ottieni il numero di elementi nel set con len()
Se set viene passato a len(), viene restituito il numero di elementi.
s = {0, 1, 2}
print(len(s))
# 3
Per ulteriori informazioni sul set, vedere l’articolo seguente.
Ottieni il numero di elementi in dict con len()
Se un dizionario dict viene passato a len(), viene restituito il numero di elementi.
d = {'key0': 0, 'key1': 1, 'key2': 2}
print(len(d))
# 3
Ottieni il numero di caratteri in str con len()
Se una stringa str viene passata a len(), viene restituito il numero di caratteri.
s = 'abcde'
print(len(s))
# 5
Per ulteriori informazioni sulle sequenze di escape, sulle interruzioni di riga e così via, vedere l’articolo seguente.
len() per numpy.ndarray
Se un array NumPy ndarray viene passato a len(), viene restituita la dimensione della prima dimensione.
import numpy as np
a_1d = np.arange(3)
print(a_1d)
# [0 1 2]
print(len(a_1d))
# 3
a_2d = np.arange(12).reshape((3, 4))
print(a_2d)
# [[ 0 1 2 3]
# [ 4 5 6 7]
# [ 8 9 10 11]]
print(len(a_2d))
# 3
a_3d = np.arange(24).reshape((2, 3, 4))
print(a_3d)
# [[[ 0 1 2 3]
# [ 4 5 6 7]
# [ 8 9 10 11]]
# [[12 13 14 15]
# [16 17 18 19]
# [20 21 22 23]]]
print(len(a_3d))
# 2
Usa gli attributi forma e dimensione per ottenere la dimensione di ciascuna dimensione e il numero di tutti gli elementi. Vedere i seguenti articoli per i dettagli.
len() per pandas.DataFrame e pandas.Series
Puoi ottenere il numero di righe passando pandas.DataFrame a len() e il numero di elementi passando pandas.Series.
import pandas as pd
df = pd.DataFrame({'A': [0, 1, 2], 'B': [3, 4, 5]}, index=['a', 'b', 'c'])
print(df)
# A B
# a 0 3
# b 1 4
# c 2 5
print(len(df))
# 3
s = pd.Series([0, 1, 2], index=['a', 'b', 'c'])
print(s)
# a 0
# b 1
# c 2
# dtype: int64
print(len(s))
# 3
Se vuoi ottenere il numero di colonne o il numero di tutti gli elementi di un pandas.DataFrame, usa gli attributi shape e size. Vedere il seguente articolo per i dettagli.
len() per i numeri (int, float, ecc.)
Il passaggio di un oggetto che non dispone del metodo speciale __len__ a len() genera l’errore TypeError.
Si noti che per i tipi predefiniti, i numeri (int e float) ei valori booleani (bool) generano l’errore.
# print(len(100))
# TypeError: object of type 'int' has no len()
# print(len(0.1))
# TypeError: object of type 'float' has no len()
# print(len(True))
# TypeError: object of type 'bool' has no len()
