"10 Умных Хитростей Python: Библиотеки и Лайфхаки

in #python2 days ago

image


10 Умных Хитростей Python: Библиотеки и Лайфхаки

Привет, программисты! Сегодня мы погрузимся в мир Python и разберем 10 умных хитростей, которые помогут вам писать код быстрее, эффективнее и с меньшими шансами на то, что ваш компьютер взорвется. 🚀

1. Используйте enumerate()

Забудьте о ручном подсчете индексов в циклах. С enumerate() вы можете одновременно получать индекс и значение. Это как два в одном, только без рекламы!

fruits = ['apple', 'banana', 'cherry']
for index, fruit in enumerate(fruits):
    print(f"{index}: {fruit}")

2. Списковые включения

Списковые включения — это как магия! Они позволяют создавать списки на лету. Просто следите, чтобы не вызвать духа лишних скобок.

squares = [x**2 for x in range(10)]

3. zip() — не только для молний

Объединяйте списки с помощью zip(). Это как сватание для ваших списков — они найдут друг друга и будут счастливы!

names = ['Alice', 'Bob', 'Charlie']
scores = [85, 90, 95]
for name, score in zip(names, scores):
    print(f"{name}: {score}")

4. defaultdict из collections

defaultdict — это как ваш друг, который всегда приносит пиццу на вечеринку. Он никогда не оставит вас без значения по умолчанию.

from collections import defaultdict

d = defaultdict(int)
d['apples'] += 1
print(d)  # defaultdict(<class 'int'>, {'apples': 1})

5. Counter для подсчета

Считайте элементы в списке, как будто вы собираете баллы в игре. С Counter это так просто, что даже ваша бабушка сможет это сделать!

from collections import Counter

words = ['apple', 'banana', 'apple', 'orange']
count = Counter(words)
print(count)  # Counter({'apple': 2, 'banana': 1, 'orange': 1})

6. itertools для бесконечных итераций

Если вам нужно что-то бесконечное, как ваши попытки разобраться с регулярными выражениями, используйте itertools.

import itertools

for i in itertools.count(start=10, step=2):
    if i > 20:
        break
    print(i)  # 10, 12, 14, 16, 18, 20

7. with для управления ресурсами

Используйте with для работы с файлами. Это как ваш личный менеджер, который все делает за вас!

with open('file.txt', 'r') as file:
    data = file.read()

8. Аннотации типов

Добавьте аннотации типов, чтобы ваш код выглядел более профессионально. Это как надеть галстук на собеседование!

def greet(name: str) -> str:
    return f"Hello, {name}!"

9. 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)

10. dataclasses для удобства

Используйте dataclasses для создания классов. Это как конструктор LEGO: просто собирайте детали и не беспокойтесь о лишних деталях!

from dataclasses import dataclass

@dataclass
class Point:
    x: int
    y: int

Вот и все! Теперь вы вооружены умными хитростями Python, которые помогут вам в ваших приключениях в коде. Помните, что программирование — это не только работа, но и веселье! Удачи и не забывайте делать перерывы — даже ваша клавиатура заслуживает немного внимания! 😄


image


All images are taken from the Pixabay.comБольше полезных статей 4adm.in