Python RU
13.4K subscribers
881 photos
42 videos
36 files
1.13K links
Все для python разработчиков

админ - @haarrp

@python_job_interview - Python собеседования

@ai_machinelearning_big_data - машинное обучение

@itchannels_telegram - 🔥лучшие ит-каналы

@programming_books_it - it книги

@pythonl

РКН: clck.ru/3Fmy2j
加入频道
🐍 Python-задача с подвохом: “Список-призрак”

📘 Условие

Посмотри на этот код:


def append_item(item, lst=[]):
lst.append(item)
return lst

result1 = append_item(1)
result2 = append_item(2)
result3 = append_item(3)

print(result1)
print(result2)
print(result3)


Вопрос:
Что выведет программа и почему?

🔍 Варианты ответа:

А)

[1]
[2]
[3]


Б)

[1]
[1, 2]
[1, 2, 3]


В)

[3]
[3]
[3]


Правильный ответ: Б

Почему?

💥 Подвох: аргумент lst=[] — мутабельный объект, и он создаётся только один раз при определении функции, а не при каждом вызове.

📌 То есть каждый вызов append_item модифицирует один и тот же список, который "помнит" все предыдущие элементы.

Как исправить:


def append_item(item, lst=None):
if lst is None:
lst = []
lst.append(item)
return lst


Теперь каждый вызов создаёт новый список, если его не передали явно.

⚠️ Подвох

• Аргументы по умолчанию вычисляются один раз
• Это работает и с dict, и с set, и с любыми объектами
• Даже опытные Python-разработчики иногда "попадаются" на этом

🎯 Отлично подходит для проверки глубокого понимания поведения функций в Python.
💡 Извлечение ключевых данных из документов

Подписи:

➡️ Document Content → Содержание документа

➡️ Define Context(Aspect) → Определите контекст (Аспект)

➡️ Select your LLM Model → Выберите модель LLM

➡️ Extract information → Извлеките информацию
🗣 Мини-скрипт: говори по-русски своим клонированным голосом (Coqui TTS)

Вот минимальный Python-скрипт на базе модели xtts_v2 от Coqui, который позволяет ввести текст на русском языке и получить аудиофайл с твоим клонированным голосом.

📦 Перед запуском установи зависимости:


pip install TTS soundfile torchaudio


📄 Сохрани этот код как russian_voice_clone.py и запусти:


from TTS.tts.configs.xtts_config import XttsConfig
from TTS.tts.models.xtts import Xtts

# 📁 Путь к твоему голосовому файлу
voice_sample_path = "your_voice.wav"

# 📝 Ввод текста
text = input("Введите текст на русском: ")

# ⚙️ Загрузка модели
config = XttsConfig()
model = Xtts.init_from_config(config)
model.load_checkpoint("tts_models/multilingual/multi-dataset/xtts_v2")

# 🎤 Создание эмбеддинга
speaker_embedding = model.get_speaker_embedding(voice_sample_path)

# 🔊 Синтез речи
output_wav = model.tts(text, speaker_embedding=speaker_embedding)

# 💾 Сохранение
model.save_wav(output_wav, "output_russian.wav")
print(" Аудио сохранено как output_russian.wav")


📌 Убедись, что:
- Файл your_voice.wav формата: .wav, 16 кГц, моно.
- Можно использовать речь любой длины (желательно от 1 минуты).
- Вводи любой текст на русском — результат будет с твоим голосом.
Python уже покорен? А как насчет Django?
 
Один из ведущих провайдеров IT-инфраструктуры Selectel подготовил бесплатный мини-курс по Django. Программа начинается с создания и настройки простых проектов: блога и канбан-доски, а завершается подключением автоматических бэкапов.
 
Всего за час вы научитесь:
1️⃣ Работать с бэкендом и API
2️⃣ Создавать веб-приложение по шаблону от Django
3️⃣ Настраивать Nginx и Gunicorn
4️⃣ Автоматизировать резервное копирование
 
Переходите в Академию Selectel, чтобы начать изучение прямо сейчас

Реклама. АО «Селектел», ИНН 7810962785, ERID: 2Vtzqx3SoDv
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Python/ django
This media is not supported in your browser
VIEW IN TELEGRAM
🎮 Oh My ~God~ Git — необычная и полезная игра с открытым исходным кодом, которая помогает разобраться с GIT не через скучные туториалы, а с помощью наглядных карточек и геймплея.

🧠 В процессе ты:
• Поймёшь, как устроен GIT под капотом
• Научишься работать с ветками, коммитами, merge и rebase
• Запомнишь команды на практике, играя

📦 Игра доступна прямо в браузере: [ohmygit.org](https://ohmygit.org/)
💻 Или можно скачать и установить с GitHub: [github.com/git-learning-game/oh-my-git](https://github.com/git-learning-game/oh-my-git)

👾 Подходит как новичкам, так и тем, кто хочет освежить знания в игровой форме.