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

in #python14 days ago

image


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

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

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

Зачем писать счетчик в цикле, когда Python может сделать это за вас? Вместо:

for i in range(len(my_list)):
    print(i, my_list[i])

Используйте:

for i, value in enumerate(my_list):
    print(i, value)

Теперь ваш код выглядит как код настоящего программиста, а не как список покупок!

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

Списковые включения — это как магия, только без волшебной палочки. Вместо:

squared = []
for x in range(10):
    squared.append(x**2)

Пишите:

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

Теперь ваш код не только короче, но и умнее, чем ваш последний проект!

3. zip() — для объединения списков

Если у вас есть два списка, и вы хотите их объединить, используйте zip(). Вместо:

names = ['Alice', 'Bob']
scores = [85, 90]
combined = []
for i in range(len(names)):
    combined.append((names[i], scores[i]))

Пишите:

combined = list(zip(names, scores))

Теперь ваши списки связаны, как вы и ваш кофе по утрам!

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

Работа с файлами может быть опасной, как запуск кода на проде без тестов. Вместо:

file = open('file.txt', 'r')
content = file.read()
file.close()

Используйте:

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

Теперь вы не забудете закрыть файл, и ваши данные не сбегут!

5. defaultdict из библиотеки collections

Когда вам нужно создать словарь с умолчаниями, defaultdict — ваш лучший друг. Вместо:

my_dict = {}
for key in keys:
    if key not in my_dict:
        my_dict[key] = []
    my_dict[key].append(value)

Пишите:

from collections import defaultdict

my_dict = defaultdict(list)
for key in keys:
    my_dict[key].append(value)

Теперь ваш словарь работает как ваша бабушка — всегда готов помочь!

6. Counter для подсчета элементов

Если вам нужно посчитать количество элементов в списке, используйте Counter. Вместо:

my_list = ['apple', 'banana', 'apple']
my_count = {}
for fruit in my_list:
    if fruit in my_count:
        my_count[fruit] += 1
    else:
        my_count[fruit] = 1

Пишите:

from collections import Counter

my_count = Counter(my_list)

Теперь ваш код считает быстрее, чем вы можете выпить чашку кофе!

7. lambda для создания анонимных функций

Когда вам нужна функция на один раз, используйте lambda. Вместо:

def add(x, y):
    return x + y

Пишите:

add = lambda x, y: x + y

Теперь ваша функция выглядит так же загадочно, как ваш код после бессонной ночи!

8. map() и filter() для работы с итерациями

Зачем писать циклы, когда есть map() и filter()? Вместо:

squared = []
for x in my_list:
    squared.append(x**2)

Пишите:

squared = list(map(lambda x: x**2, my_list))

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

9. Используйте f-строки для форматирования строк

Форматирование строк стало проще с f-строками. Вместо: