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

in #python14 days ago

image


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

Привет, Python-энтузиасты! 🐍 Сегодня мы погрузимся в мир хитростей, которые сделают вашу жизнь программистом немного проще (и веселее). Готовы? Поехали!

1. Используйте enumerate(), чтобы не потерять счет

Забыли, на каком элементе остановились? Не беда! Используйте enumerate() и забудьте о своих проблемах с памятью.

for index, value in enumerate(['apple', 'banana', 'cherry']):
    print(index, value)

Теперь вы не только знаете, что вы едите, но и сколько раз!

2. zip() — ваш лучший друг для параллельной работы

Когда вам нужно объединить списки, не теряйте время на сложные циклы. Используйте zip() и наслаждайтесь простотой.

names = ['Alice', 'Bob', 'Charlie']
scores = [90, 85, 88]

for name, score in zip(names, scores):
    print(f"{name} scored {score}")

Потерять их по отдельности — это уже не ваша проблема!

3. Лямбда-функции — для тех, кто не любит лишние слова

Если вам нужно создать функцию на ходу, используйте лямбда-функции. Они короткие, как ваш уровень терпения, когда код не работает.

add = lambda x, y: x + y
print(add(5, 3))

Лямбда: когда вам нужно быстро и без лишних слов!

4. Списковые включения — магия в одном выражении

Списковые включения — это как заклинание для создания списков. Убедитесь, что вы не заколдовали себя на бесконечный цикл!

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

Теперь у вас есть список квадратов, и вы не потратили на это целую вечность!

5. collections.defaultdict — чтобы не проверять наличие ключа

Забудьте о проверках на наличие ключей в словаре. defaultdict сам позаботится об этом.

from collections import defaultdict

d = defaultdict(int)
d['apples'] += 1
print(d)

Теперь ваши ключи всегда будут с вами, как верные друзья!

6. Используйте with для работы с файлами

Не хотите забыть закрыть файл? Используйте with и забудьте о своих заботах!

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

Файл закроется сам, и вы не получите исключение, как в плохом фильме!

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

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

import itertools

combinations = list(itertools.combinations(['a', 'b', 'c'], 2))
print(combinations)

Комбинируйте, пока не станет слишком весело!

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. dataclasses — для создания классов без боли

Не любите писать много кода для классов? Используйте dataclasses и забудьте о лишнем!

from dataclasses import dataclass

@dataclass
class Person:
    name: str
    age: int

p = Person("Alice", 30)
print(p)

Классы без боли — это как пицца без анчоусов!

10. requests — для работы с API

Если вам нужно работать с API, библиотека requests — это ваш лучший выбор. Она делает HTTP-запросы такими


image


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

Sort:  

Upvoted! Thank you for supporting witness @jswit.