Привет, кодеры! 🐍 Если вы думаете, что Python — это просто язык для написания скриптов, то вы, вероятно, не знаете, что он может делать! Давайте разберем 10 хитростей, которые помогут вам стать настоящим мастером Python. И не забудьте, что код — это не просто работа, это искусство! 🎨
enumerate()Зачем писать for i in range(len(my_list))? Используйте enumerate() и получите индекс и значение сразу!
for index, value in enumerate(my_list):
print(f"Индекс: {index}, Значение: {value}")
Код, который не требует дополнительных строк — это как кофе без кофеина: зачем?
zip() — ваш лучший другОбъедините списки в один с помощью zip(). Это как объединить два отличных фильма в один суперфильм!
names = ['Alice', 'Bob', 'Charlie']
scores = [85, 90, 95]
combined = list(zip(names, scores))
Проблемы с парами? Просто используйте zip()!
Когда вам нужно сделать что-то быстро и грязно, используйте лямбда-функции. Это как фастфуд, только для кода!
square = lambda x: x ** 2
print(square(5)) # 25
Не забывайте: лямбда — это не только про анонимность, но и про скорость!
Списковые включения — это как магия: вы можете создать новый список, не выходя из дома!
squares = [x ** 2 for x in range(10)]
Списковые включения: когда вам нужно быстро создать список, а не писать целую книгу!
collections.defaultdictЗачем проверять, существует ли ключ в словаре, когда можно использовать defaultdict? Это как иметь запасной ключ от квартиры!
from collections import defaultdict
my_dict = defaultdict(int)
my_dict['a'] += 1
Запасной ключ? Нет, это просто defaultdict!
itertools для бесконечных итерацийС помощью библиотеки itertools вы можете создавать бесконечные итераторы. Это как бесконечный запас пиццы!
import itertools
for i in itertools.count(10):
print(i)
if i >= 15:
break
Бесконечность — это не предел, когда у вас есть itertools!
with для управления ресурсамиИспользуйте with, чтобы гарантировать, что ваши ресурсы будут закрыты. Это как уходить из ресторана, не оставляя следов!
with open('file.txt') as f:
content = f.read()
Не оставляйте открытых файлов, как не оставляете открытыми двери в своем доме!
functools.lru_cacheКэширование функций — это как хранить закуски на случай непредвиденных обстоятельств!
from functools import lru_cache
@lru_cache(maxsize=None)
def fib(n):
if n < 2:
return n
return fib(n-1) + fib(n-2)
Кэшируйте, как будто от этого зависит ваша жизнь!
pathlib для работы с путямиРаботаете с путями? Используйте pathlib. Это как GPS для файловой системы!
from pathlib import Path
p = Path('my_folder/my_file.txt')
print(p.exists())
Пути больше не будут для вас загадкой!
__name__ == '__main__'Это как секретный вход в ваш код. Вы не хотите, чтобы ваш код выполнялся, когда его импортируют!
if __name__ == '__main__':
print("Этот код выполняется только при запуске напрямую!")
Не позволяйте своему коду путаться в своих собственных дверях!
Вот и все! 10 хитростей Python, которые помогут вам стать еще более эффективным и креативным программистом. Помните
All images are taken from the Pixabay.comБольше полезных статей 4adm.in