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

in #python4 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. Лямбда-функции

Когда вам нужно что-то быстрое и грязное, лямбда-функции — ваши лучшие друзья. Они такие же короткие, как ваши обоснования, почему вы не сделали домашку.

square = lambda x: x * x
print(square(5))  # 25

3. zip() для параллельного перебора

Если у вас есть несколько списков и вы хотите их объединить, zip() — это ваш супергерой. Он может объединить их, как вы объединяете свои надежды и мечты о выходных.

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

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

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

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

5. collections.defaultdict

Когда вам нужно словарь с умом, используйте defaultdict. Он всегда готов помочь, даже если вы забыли его позвать.

from collections import defaultdict

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

6. itertools для итераций

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

import itertools

for combo in itertools.combinations([1, 2, 3], 2):
    print(combo)

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

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

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

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. pathlib для работы с путями

Работа с путями может быть сложной, но с pathlib это как прогулка по парку. Не забудьте взять с собой сандвичи!

from pathlib import Path

p = Path('my_directory') / 'file.txt'
print(p.exists())

10. pytest для тестирования

Если вы еще не используете pytest, то вы упускаете возможность сделать свою жизнь проще. Это как иметь личного тренера для вашего кода!

def test_add():
    assert add(1, 1) == 2

Вот и все! Надеюсь, эти хитрости помогут вам стать настоящими мастерами Python. Помните, что код — это не просто работа, это искусство. А если что-то пойдет не так, просто добавьте еще одну строку "print" и все будет в порядке! 😄


image


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