10 Умных Хитростей Python: Библиотеки и Лайфхаки
Привет, кодеры! 🐍 Если вы думали, что Python — это просто язык для написания простых скриптов, то вы сильно недооценили его возможности. Давайте разберем 10 умных хитростей, которые помогут вам стать настоящим магом Python! ✨
1. Используйте enumerate()
Забудьте о ручном подсчете индексов в циклах. С помощью enumerate() вы можете получать индекс и значение одновременно. Это как получить два в одном, только без скидки!
fruits = ['apple', 'banana', 'cherry']
for index, fruit in enumerate(fruits):
print(f"{index}: {fruit}")
2. Лямбда-функции
Когда вам нужно сделать что-то быстро и не хочется писать полноценную функцию, используйте лямбда! Это как фастфуд для кода — быстро, но не всегда полезно.
square = lambda x: x ** 2
print(square(5)) # 25
3. Списковые включения
Создавайте списки на лету! Это как магия, только вместо шляпы у вас есть список.
squares = [x ** 2 for x in range(10)]
print(squares) # [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
4. zip()
Склеивайте списки, как будто это пицца! С помощью zip() можно объединять списки в пары. Только не забудьте про соус!
names = ['Alice', 'Bob', 'Charlie']
ages = [25, 30, 35]
combined = list(zip(names, ages))
print(combined) # [('Alice', 25), ('Bob', 30), ('Charlie', 35)]
5. defaultdict из collections
Когда вам нужно создать словарь, но вы не хотите проверять наличие ключа, используйте defaultdict. Это как иметь запасной ключ от квартиры — вы всегда сможете войти!
from collections import defaultdict
d = defaultdict(int)
d['apples'] += 1
print(d) # defaultdict(, {'apples': 1})
6. with для работы с файлами
Используйте with для работы с файлами, чтобы не беспокоиться о закрытии. Это как иметь автоматический пылесос — он сам уберет за вас!
with open('file.txt', 'r') as f:
content = f.read()
7. itertools для итераций
Если вам нужно работать с итерациями, то библиотека itertools — ваш лучший друг. Это как швейцарский нож для итераторов!
import itertools
for combo in itertools.combinations(['A', 'B', 'C'], 2):
print(combo) # ('A', 'B'), ('A', 'C'), ('B', 'C')
8. functools.lru_cache
Ускорьте свои функции с помощью кэширования. Это как иметь запасные батарейки для вашего пульта — всегда под рукой!
from functools import lru_cache
@lru_cache(maxsize=None)
def fibonacci(n):
if n < 2:
return n
return fibonacci(n-1) + fibonacci(n-2)
9. map() и filter()
Эти функции помогут вам обрабатывать списки, как шеф-повар на кухне. Вырезаем лишнее и оставляем только самое вкусное!
numbers = [1, 2, 3, 4, 5]
squared = list(map(lambda x: x ** 2, numbers))
even_numbers = list(filter(lambda x: x % 2 == 0, numbers))
10. f-строки
Форматирование строк стало проще с f-строками. Это как иметь волшебную палочку для ваших строковых магий!
name = "Маг"
age = 100
print(f"{name} — это {age} летняя тайна!")
Вот и все, друзья! Надеюсь, эти хитрости помогут вам прокачать ваши навыки в Python. Помните: код — это
All images are taken from the Pixabay.comБольше полезных статей 4adm.in