Writing faster Python
Ordenar una lista
1
2
sorted(MILLION_RANDOM_NUMBERS) # 467ms
MILLION_RANDOM_NUMBERS.sort() # 77.6 ms (6 veces más rapido)
Validar si una lista esta vacia
1
2
3
4
5
if len(mi_lista) == 0 # 91.7ns
if mi_lista == [] # 56.3 ns
if not a mi_lista # 32.4ns
List() o []
List() # 104 ns
[] # 22.5 ns
Contar numero de elementos en una lista
count = 0
for element in MILLION_RANDOM_NUMBERS:
count += 1
print count
print len(MILLION_RANDOM_NUMBERS) # 96 ns (274000 veces más rapido)
Filtrar una lista
output = []
for element in MILLON_NUMBERS:
if element % 2:
output.append(element) # 222 ns
[item for item in MILLON_NUMBERS if item % 2] # 127 ms
Borrar elementos de una lista
unique = []
for element in MILLON_NUMBERS:
if element not in unique:
unique.append(element) # 8.29 s
set(MILLON_NUMBERS) # 19,3 ms (400 veces más rapido)
Validar true
if variable == True: # 35.8 ns
if variable is True: # 28.7 ns
if variable # 20.6 ns (75% más rapido)