Добиться с помощью Питона чего-либо можно разными способами. Разница будет состоять в читабельности кода и в его производительности. И если с читабельностью все более-менее понятно, то как замерить производительность того или иного способа? В этом поможет библиотека time.py, точнее ее функция time().
Например:
import time # импортируем библиотеку
t1 = time.time() # запоминаем время
list1 = [x for x in range(1000) if x % 2 == 0] # создаем список из четных чисел в диапазоне от 0 до 1000 с помощью генератора списков
t2 = time.time() # запоминаем время
list2 = [] # аналогично создаем список четных чисел, только с помощью функции .append()
for i in range(1000):
if i % 2 == 0:
list2.append(i)
t3 = time.time() # запоминаем время
# чтобы узнать, сколько времени прошло, нужно более ранне значение времени отнять от более позднего.
print(t2-t1, ' ', t3-t2) # вывод на экран
вот что получилось у меня:
om.hipipal.qpyplus/.last_tmp.py"
0.00099015235900878906 0.0018999576568603516
u0_a105@android:/ $
разница в производительности - примерно 2 раза.
Например:
import time # импортируем библиотеку
t1 = time.time() # запоминаем время
list1 = [x for x in range(1000) if x % 2 == 0] # создаем список из четных чисел в диапазоне от 0 до 1000 с помощью генератора списков
t2 = time.time() # запоминаем время
list2 = [] # аналогично создаем список четных чисел, только с помощью функции .append()
for i in range(1000):
if i % 2 == 0:
list2.append(i)
t3 = time.time() # запоминаем время
# чтобы узнать, сколько времени прошло, нужно более ранне значение времени отнять от более позднего.
print(t2-t1, ' ', t3-t2) # вывод на экран
вот что получилось у меня:
om.hipipal.qpyplus/.last_tmp.py"
0.00099015235900878906 0.0018999576568603516
u0_a105@android:/ $
разница в производительности - примерно 2 раза.
Комментариев нет:
Отправить комментарий