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

in #python7 days ago

image


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

Привет, Python-энтузиасты! 🐍 Если вы думаете, что знаете все хитрости Python, то вы, вероятно, просто не искали их в темных уголках интернета. Давайте погрузимся в мир библиотек и лайфхаков, которые сделают вашу жизнь проще, а код — чище!

1. itertools — ваш новый лучший друг

Забудьте о циклах! С библиотекой itertools вы можете генерировать комбинации и перестановки с легкостью. Теперь ваши циклы будут выглядеть так же изящно, как вы на собеседовании, когда вам задали вопрос о "функциях высшего порядка".

import itertools

for combo in itertools.combinations(['🍕', '🍔', '🌭'], 2):
    print(combo)

2. collections.defaultdict — для тех, кто не любит инициализировать

Забудьте о проверках на наличие ключа в словаре. С defaultdict вы можете быть уверены, что ваш код не упадет, как ваши планы на выходные.

from collections import defaultdict

d = defaultdict(int)
d['apple'] += 1
print(d)  # {'apple': 1}

3. pandas — когда ваши данные слишком скучны

Если ваши данные напоминают вам о скучном вечере с родственниками, pandas поможет сделать их более интересными. Просто добавьте немного группировки и агрегации, и ваши данные заиграют новыми красками!

import pandas as pd

data = {'Имя': ['Аня', 'Борис', 'Вика'], 'Возраст': [22, 25, 20]}
df = pd.DataFrame(data)
print(df.groupby('Возраст').count())

4. lambda — когда вы хотите быть анонимным

Не хотите, чтобы ваш код выглядел слишком формально? Используйте lambda. Это как скрывать свою личность на вечеринке — никто не знает, кто вы, но все рады вас видеть.

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

5. functools.lru_cache — для ленивых программистов

Зачем считать одно и то же дважды? Используйте lru_cache, чтобы кэшировать результаты. Это как хранить остатки пиццы в холодильнике — всегда полезно!

from functools import lru_cache

@lru_cache(maxsize=None)
def fibonacci(n):
    return n if n < 2 else fibonacci(n-1) + fibonacci(n-2)

print(fibonacci(10))  # 55

6. contextlib — для тех, кто любит порядок

Если вам не нравится, когда ваши файлы остаются открытыми, используйте contextlib. Это как иметь идеального соседа, который всегда закрывает за собой двери.

from contextlib import closing
import urllib.request

with closing(urllib.request.urlopen('http://example.com')) as page:
    for line in page:
        print(line)

7. json — для общения с API

Когда вам нужно поговорить с API, json — это то, что вам нужно. Это как знать язык любви, только вместо романтики — данные.

import json

data = {'name': 'Alice', 'age': 30}
json_data = json.dumps(data)
print(json_data)  # {"name": "Alice", "age": 30}

8. matplotlib — для визуализации ваших неудач

Хочется визуализировать свои ошибки? Используйте matplotlib! Теперь ваши графики будут выглядеть так же плохо, как ваши попытки объяснить код на собеседовании.

import matplotlib.pyplot as plt

plt.plot([1, 2, 3], [4, 5, 6])
plt.title('Мои неудачи в графиках')
plt.show()

9. os — для тех, кто любит копаться в системе

Хотите узнать, что происходит на вашем компьютере? Библиотека os — это как заглянуть под капот вашего кода.

import os

print(os.getcwd())  # Текущая директория

10. requests — для тех, кто


image


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