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

in #pyhon3 days ago

image


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

Привет, Python-разработчики! Если вы думаете, что знаете все о Python, то приготовьтесь к неожиданностям. Мы собрали для вас 10 хитростей, которые сделают вашу жизнь проще, а код — чище. И не забывайте, что Python — это не только язык программирования, но и стиль жизни (особенно если вы используете import this).

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

Забыли, как получить индекс элемента в списке? Вместо того чтобы использовать range(len()), просто воспользуйтесь enumerate(). Это как получить два в одном — индекс и значение!

fruits = ['яблоко', 'банан', 'вишня']
for index, fruit in enumerate(fruits):
    print(f"{index}: {fruit}")

Потому что for i in range(len(fruits)) — это слишком 2000-е!

2. zip() — ваш лучший друг

Если вам нужно объединить два списка, используйте zip(). Это как сводить друзей на свидание — они идеально подходят друг другу!

names = ['Alice', 'Bob', 'Charlie']
ages = [25, 30, 35]
combined = list(zip(names, ages))

Никогда не забывайте: "Сложить" — не значит "прибавить"!

3. Словари с пониманием

Словари в Python — это как шкаф для обуви: если вы не организуете его, то никогда не найдете нужную пару!

squares = {x: x**2 for x in range(10)}

Словари — это как ваши друзья: каждый из них уникален и имеет свое значение!

4. Используйте defaultdict

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

from collections import defaultdict

word_count = defaultdict(int)
for word in ['apple', 'banana', 'apple']:
    word_count[word] += 1

Потому что "KeyError" — это не то, что вы хотите слышать от друга!

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

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

with open('file.txt') as f:
    content = f.read()

Потому что забыть закрыть файл — это как забыть выключить утюг!

6. Генераторы — магия на пальцах

Генераторы позволяют вам экономить память. Это как заказывать один бургер, а не целую коробку!

def countdown(n):
    while n > 0:
        yield n
        n -= 1

Потому что память — это не то, что можно просто так выбрасывать!

7. itertools — для продвинутых

Если вы хотите продвинуться на уровень выше, используйте библиотеку itertools. Это как швейцарский нож для программиста!

import itertools

combinations = list(itertools.combinations('ABCD', 2))

Потому что иногда вам нужно больше, чем просто "простой" код!

8. functools.lru_cache для кэширования

Если у вас есть функции, которые вызываются много раз, используйте 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. pandas для анализа данных

Если вы работаете с данными, pandas — это ваша палочка-выручалочка. Это как иметь суперсилу в мире чисел!

import pandas as pd

data = pd.DataFrame({'A': [1, 2], 'B': [3, 4]})

Потому что "анализ данных" не должен звучать как "математика"!

10. Не забывайте про pytest


image


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