functools.partial позволяет создавать функции с предопределёнными аргументами, что полезно для сокращения кода и повышения читаемости.from functools import partial
def greet(greeting, name):
return f"{greeting}, {name}!"
# Создаём функцию с предопределённым приветствием
say_hello = partial(greet, "Hello")
print(say_hello("Alice"))
# Вывод: Hello, Alice!
int_base_2 = partial(int, base=2)
print(int_base_2("1010"))
# Вывод: 10
Используйте partial для настройки функций и упрощения повторяющихся вызовов!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤🔥3
Если вы хотите углубить свои знания Python и подготовиться к собеседованию, это must have для вас.
Отличный способ проверить свои знания, найти слабые места и закрыть пробелы в понимании Python.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥7👍5
👾 Как написать игру на Python: 5 игровых движков
Туториал для тех, кто хочет сделать игру на Python (и пока не изучать Unity или Unreal Engine). Напишем код простой игры со сбором монет и сравним на трех различных движках, а также сделаем пару игр в стилях Interactive Fiction и визуального романа.
🖥 Перейти к статье
🐍 Ghostly Python | #статьи
Туториал для тех, кто хочет сделать игру на Python (и пока не изучать Unity или Unreal Engine). Напишем код простой игры со сбором монет и сравним на трех различных движках, а также сделаем пару игр в стилях Interactive Fiction и визуального романа.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍5❤1
def modify(number, string):
number += 1
string += " world"
return number, string
num = 5
text = "hello"
num, text = modify(num, text)
print(num, text)
Выберите вариант ответа ниже
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤1
👍10❤🔥3
Фишка №1
Функция vars() возвращает словарь с атрибутами объекта.
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
person = Person("Alice", 30)
print(vars(person)) # {'name': 'Alice', 'age': 30}
vars() позволяет быстро получить информацию о всех атрибутах объекта, что полезно для отладки и анализа.Фишка №2
frozenset — это неизменяемая версия множества.frozen_set = frozenset([1, 2, 3, 4])
print(frozen_set) # frozenset({1, 2, 3, 4})
frozenset гарантирует их неизменность.Фишка №3
__slots__ позволяет ограничить атрибуты объектов, экономя память.class Person:
__slots__ = ['name', 'age']
def __init__(self, name, age):
self.name = name
self.age = age
person = Person('Alice', 30)
print(person.name) # Alice
__slots__ помогает уменьшить расход памяти.Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥3❤🔥2
Translators — это лёгкая и мощная библиотека для Python, которая позволяет выполнять переводы текста через популярные онлайн-сервисы, такие как Google Translate, Microsoft Translator, DeepL и многие другие.
— Поддержка множества переводчиков: Google Translate, DeepL, Microsoft Translator, и т.д.
— Перевод текста на более чем 100 языков.
— Простота в использовании: подключение к API не требуется!
— Возможность указания источника и целевого языка.
import translators as ts
# Перевод через DeepL
result = ts.deepl("Как дела?", from_language="ru", to_language="en")
print(result)
# Вывод: How are you?
pip install translators
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12
Это мощный инструмент для работы с регулярными выражениями. Он позволяет искать, проверять и заменять строки на основе заданных шаблонов.
•
findall() — Возвращает список всех совпадений шаблона в строке.•
match() — Проверяет совпадение шаблона только в начале строки.•
search() — Ищет первое совпадение шаблона в строке, возвращает None, если совпадений нет.•
sub() — Заменяет все совпадения шаблона на указанный текст.•
compile() — Компилирует регулярное выражение для повторного использования.Регулярные выражения помогают легко находить и манипулировать текстом, будь то валидация данных, фильтрация или поиск шаблонов.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10❤3
This media is not supported in your browser
VIEW IN TELEGRAM
На кануне нового года, не очень хочется напрягаться и изучать что-то сложное. А потому, сегодня лайт контент — елочка в терминале.... Надо же как-то новогоднее настроение получить
Так вот, давайте разберем, как реализовать то, что вы видите на прикрепленной гифке.
pip install colorama
import os
import time
import random
from colorama import Fore, Style, init
init(autoreset=True)
def draw_tree(height=7):
tree = []
for i in range(height):
# Вычисляем количество звёздочек и пробелов
stars = "*" * (2 * i + 1)
spaces = " " * (height - i - 1)
tree.append(spaces + stars)
# Добавляем ствол
trunk = " " * (height - 2) + "|||"
tree.append(trunk)
return tree
def add_garland(tree):
garland_symbols = [Fore.RED + "o", Fore.YELLOW +
"x", Fore.GREEN + "*", Fore.CYAN + "+"]
for i, line in enumerate(tree):
if "*" in line:
tree[i] = "".join(
random.choice(garland_symbols) if char == "*" else char for char in line
)
return tree
def show_tree(tree):
os.system("cls" if os.name == "nt" else "clear")
print("\n".join(tree))
if __name__ == "__main__":
try:
while True: # Бесконечный цикл
tree = draw_tree(height=10) # Высота ёлочки
decorated_tree = add_garland(tree)
show_tree(decorated_tree)
time.sleep(0.5)
except KeyboardInterrupt:
print("\nС Новым Годом! 🎄✨")
Полный скрипт, как всегда закинул в архив: тут
С Наступающим Новым Годом, дорогие друзья!🎄
Please open Telegram to view this post
VIEW IN TELEGRAM
❤13👍5
Вот и подошёл к концу ещё один год, полный открытий, новых знаний и интересных вызовов. Спасибо, что были с нами !
Пусть в новом году ваш код будет чистым, баги — редкими, а деплои — успешными! Желаю каждому достичь новых вершин в 2025 году.
Впереди нас ждет еще много всего интересного! Уже есть грандиозные планы по развитию канала и уверен, вам понравится. Оставайтесь с нами, приглашайте друзей и вместе мы сделаем крутое сообщество, которое будет нести пользу каждому!
С Праздником, дорогие подписчики!
Please open Telegram to view this post
VIEW IN TELEGRAM
🎉11👍5❤3🔥2
Pex собирает ваше приложение и его зависимости в архив .pex, который можно запустить как обычный исполняемый файл.
pip install pex
pex requests -o my_app.pex -m requests.cli:main
Здесь мы создаём файл
my_app.pex с модулем requests.python my_app.pex
Если вы когда-нибудь хотели упаковать Python-приложение в один исполняемый файл без зависимости от внешнего окружения, то этот инструмент точно вам пригодится.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14😱2
Если вам нужно удалить дубликаты из списка, Python предоставляет быстрый и удобный способ — использование множества
set.numbers = [1, 2, 2, 3, 4, 4, 5]
unique_numbers = list(set(numbers))
print(unique_numbers)
# Вывод: [1, 2, 3, 4, 5]
Множество хранит только уникальные значения, и преобразование списка в
set автоматически удаляет повторяющиеся элементы.Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🔥2❤1
Pydub — это библиотека для работы с аудиофайлами в Python. Она позволяет обрабатывать аудио: обрезать, объединять, изменять громкость и формат файлов.
Подходит для разработчиков, которым нужно быстро и просто манипулировать аудиофайлами без использования сложных библиотек, таких как FFmpeg.
from pydub import AudioSegment
# Загрузка аудиофайла
audio = AudioSegment.from_file("example.mp3")
# Обрезка аудио с 30-й по 60-ю секунду
audio_cut = audio[30000:60000]
# Изменение громкости на -5 дБ
quieter_audio = audio_cut - 5
# Экспорт измененного аудиофайла
quieter_audio.export("output.mp3", format="mp3")
pip install pydub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥3❤2
В статье рассказывается, как шаг за шагом создать простую, но увлекательную головоломку под названием Amazing Frogs.
— Как работать с Pygame для создания игрового поля.
— Использование тайлов и анимаций для персонажей.
— Логика управления игроком и взаимодействия объектов.
— Добавление звуков, анимаций и других игровых эффектов.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤2🔥2
Vulture — это удобный инструмент, который помогает находить неиспользуемые переменные, функции, классы и модули в вашем коде. Удаление такого «мёртвого кода» делает проект чище, быстрее и проще в поддержке.
— Анализирует ваш код и выводит список неиспользуемых объектов.
— Помогает уменьшить объём кода, удалив ненужные фрагменты.
— Простая интеграция в процессы CI/CD.
1. Установка
pip install vulture
2. Запустите анализ вашего проекта
vulture path/to/your/project
3. Получите список мёртвого кода и очистите его.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥4❤1
Media is too big
VIEW IN TELEGRAM
В видео рассмотрим асинхронное программирование, и виды многозадачности при проектировании приложения - процессы, потоки и асинхронный код. Рассмотрим библиотеку asyncio и как на python писать асинхронный код.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥3
Стандартные словари в Python не всегда удобны, если вам нужно хранить несколько значений для одного ключа. Например, если вы хотите, чтобы каждый ключ хранил список значений, вам придется проверять, существует ли уже такой ключ, и если нет — создавать новый список.
Однако, в подобных ситуациях, мы можем использовать
defaultdict из модуля collections.from collections import defaultdict
my_dict = defaultdict(list)
my_dict["a"].append(1)
my_dict["a"].append(2)
my_dict["b"].append(3)
print(my_dict)
— Каждый ключ по умолчанию связан с пустым списком.
— Если ключ "a" уже существует, добавляем значение в список.
— Если ключа "a" нет, он создается с пустым списком, и добавляется значение.
Удобно для работы с группами данных, подсчетами и многими другими задачами.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11
CodeDex — это интерактивная платформа, которая позволяет изучать Python через практику и увлекательные задачи.
— Интерактивные уроки: учите Python шаг за шагом, выполняя задания прямо в браузере.
— Практика на реальных задачах: от простых основ до сложных алгоритмов.
— Геймификация обучения: очки, уровни и достижения делают процесс увлекательным.
— Раздел для опытных пользователей: сложные темы, такие как работа с API, асинхронность и обработка данных.
Кстати, вот еще репозиторий с готовым кодом решений задач: GitHub📱
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤3