🐍 Укус питона 🐍
2.6K subscribers
978 photos
17 videos
284 links
🐍 Канал о программировании на языке Python. Тематические уроки и лайфхаки.

👽 Админ - @it_dashka
🔊 Купить рекламу: https://telega.in/c/byteofpython

👉 Чат: @abyteofpython
👉 Поделиться с друзьями: @byteofpython
Download Telegram
⚙️ Работа с множествами в Python

Множество (set) — это коллекция уникальных элементов без определённого порядка.

Главное применение set — быстро удалять дубликаты и проверять наличие элемента.

nums = [1, 2, 2, 3, 4, 4, 5]

unique_nums = set(nums)
print(unique_nums) # {1, 2, 3, 4, 5}

print(3 in unique_nums) # True
print(10 in unique_nums) # False


✔️ Множества полезны для оптимизации кода и быстрого поиска данных
⚙️ Работа с if-else в Python

if-else — это условная конструкция в Python для проверки условий.

Синтаксис:
x = 10

if x > 5:
print("Больше 5")
else:
print("Меньше или равно 5")


Можно добавлять elif (дополнительные условия):
x = 3

if x > 5:
print("Больше 5")
elif x == 5:
print("Равно 5")
else:
print("Меньше 5")


✔️ if-else помогает управлять логикой программы и выполнять код в зависимости от условий.
Списковые выражения (List Comprehensions)

Списковое выражение — это компактный способ создать список на основе другого и сразу применить к нему трансформацию или фильтр.

➡️ Пример:
# Квадраты чётных чисел от 0 до 9
squares = [x**2 for x in range(10) if x % 2 == 0]
print(squares) # [0, 4, 16, 36, 64]


✔️ Такой способ короче и читаемее, чем использование цикла for. Подходит для простых операций над списками.
🔹 Аргументы по умолчанию в Python

Функции в Python могут принимать аргументы со значениями по умолчанию.

Это делает вызов функций гибким
: можно передавать только нужные параметры, остальные примут заранее заданные значения.

➡️ Пример:

def greet(name, greeting="Привет"):
print(f"{greeting}, {name}!")

greet("Алиса") # Привет, Алиса!
greet("Боб", "Здравствуйте") # Здравствуйте, Боб!


Такой подход упрощает код и делает функции более универсальными.
Что выведет следующий код?
Anonymous Quiz
32%
True, True
34%
True, False
27%
False, False
7%
Ошибка выполнения
🔹 Как работает оператор in в Python

Оператор in проверяет, содержит ли последовательность заданное значение. Работает с строками, списками, кортежами, множествами и словарями.

➡️ Пример:

letters = ['a', 'b', 'c']
print('b' in letters) # True

word = "python"
print('y' in word) # True

user = {'name': 'Alice', 'age': 30}
print('name' in user) # True (ключ проверяется)


Полезен для фильтрации, поиска и проверок наличия элемента.
Ускорить Pandas в 60 раз: проверяем лайфхаки из интернета на реальном проекте и обкладываемся бенчмарками

Вместо очередных «топов» — реальные бенчмарки. Я покажу, как советы по ускорению Pandas могут замедлить код, и какие из них реально работают в зависимости от ситуации
Зачем используется конструкция if name == "main" в Python и когда её применять?

Конструкция if name == "main" используется для того, чтобы запускать часть кода только при прямом выполнении файла, а не при его импорте как модуля. Это важно для разделения логики запуска и повторного использования кода.

Пример:

def greet():
print("Hello!")

if name == "main":
greet()


📌 В этом примере функция greet() вызовется только если файл запущен напрямую, но не при импорте его в другой модуль.

if name == "main" удобно использовать для тестирования, запуска скриптов и избежания лишнего выполнения кода при импорте.
Что выведет следующий код?
Anonymous Quiz
14%
10
19%
5
62%
15
5%
Ошибка выполнения
⚙️ Циклы for с range()

В Python for часто используется вместе с range() для повторения действий. range(start, stop, step) создаёт последовательность чисел. Если указать только одно число — это будет stop, а start считается равным 0.

# Выводит числа от 0 до 4
for i in range(5):
print(i)

# Выводит чётные числа от 2 до 10
for i in range(2, 11, 2):
print(i)


➡️ Такой способ помогает легко перебирать индексы, повторять действия заданное число раз или строить простые циклы без списков.
👀 Типизация в Python

Python — динамически типизируемый язык, но с версии 3.5+ поддерживает аннотацию типов. Это не делает язык статически типизированным, но помогает с автодополнением, отладкой и документацией.

➡️ Пример использования:

def greet(name: str, times: int) -> str:
return (f"Hello, {name}! " * times).strip()

print(greet("Alice", 2)) # Hello, Alice! Hello, Alice!


Аннотации не обязательны, но делают код чище и понятнее, особенно в больших проектах.
Что выведет следующий код?
Anonymous Quiz
26%
Hello
60%
Before, Hello, After
7%
Before, After
7%
Ошибка выполнения
🧠 Словари в Python: быстрое хранение данных по ключу

Словарь (dict) — структура данных, где каждому уникальному ключу соответствует значение. Полезен, когда нужен быстрый доступ к данным по имени, ID и т.д.

user = {'name': 'Анна', 'age': 25}
print(user['name']) # Анна

# Добавление нового поля
user['email'] = 'anna@example.com'
print(user)


🔹 Ключи должны быть неизменяемыми (строки, числа, кортежи).
🔹 Доступ и изменение по ключу — за константное время.

📌 Используйте словари, когда нужен быстрый доступ к данным по метке.