PYTHONL Telegram 5109
This media is not supported in your browser
VIEW IN TELEGRAM
🖥 Полезный совет по ускорению Python-кода

Многие считают, что list comprehension всегда оптимален. Но при больших объёмах данных связка map + filter может быть быстрее: она выполняется на уровне C и не создаёт лишних промежуточных структур.

Когда нужно одновременно фильтровать и преобразовывать элементы, map + filter часто выигрывает по скорости.


def transform(x):
return x * x

data = range(10_000_000)

# Медленнее: создаём лишние промежуточные объекты
res1 = [transform(x) for x in data if x % 2 == 0]

# Быстрее: map и filter не создают лишних списков
res2 = list(map(transform, filter(lambda x: x % 2 == 0, data)))

print(res1[:5], res2[:5])


@pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
👍29🔥105😁3



tgoop.com/pythonl/5109
Create:
Last Update:

🖥 Полезный совет по ускорению Python-кода

Многие считают, что list comprehension всегда оптимален. Но при больших объёмах данных связка map + filter может быть быстрее: она выполняется на уровне C и не создаёт лишних промежуточных структур.

Когда нужно одновременно фильтровать и преобразовывать элементы, map + filter часто выигрывает по скорости.


def transform(x):
return x * x

data = range(10_000_000)

# Медленнее: создаём лишние промежуточные объекты
res1 = [transform(x) for x in data if x % 2 == 0]

# Быстрее: map и filter не создают лишних списков
res2 = list(map(transform, filter(lambda x: x % 2 == 0, data)))

print(res1[:5], res2[:5])


@pythonl

BY Python/ django


Share with your friend now:
tgoop.com/pythonl/5109

View MORE
Open in Telegram


Telegram News

Date: |

1What is Telegram Channels? How to Create a Private or Public Channel on Telegram? Telegram channels fall into two types: Polls Image: Telegram.
from us


Telegram Python/ django
FROM American