Python RU
Все для python разработчиков админ - @haarrp @python_job_interview - Python собеседования @ai_machinelearning_big_data - машинное обучение @itchannels_telegram - 🔥лучшие ит-каналы @programming_books_it - it книги @pythonl РКН: clck.ru/3Fmy2j
Ko'proq ko'rsatish📈 Telegram kanali Python RU analitikasi
Python RU (@pro_python_code) Rus til segmentidagi kanali faol ishtirokchi. Hozirda hamjamiyat 12 386 obunachidan iborat bo'lib, Texnologiyalar & Aralashmalar toifasida 9 837-o'rinni va Rossiya mintaqasida 52 002-o'rinni egallagan.
📊 Auditoriya ko‘rsatkichlari va dinamika
невідомо sanasidan buyon loyiha tez o‘sib, 12 386 obunachiga ega bo‘ldi.
26 Avgust, 2026 dagi oxirgi ma’lumotlarga ko‘ra kanal barqaror faollikka ega. Oxirgi 30 kunda obunachilar soni -60 ga, so‘nggi 24 soatda esa -4 ga o‘zgardi va umumiy qamrov yuqori darajada qolmoqda.
- Tasdiqlash holati: Tasdiqlanmagan
- Jalb etish (ER): Auditoriya o‘rtacha 8.60% darajada jalb etiladi. Nashrdan keyingi dastlabki 24 soatda kontent odatda umumiy obunachilar sonining 3.36% ini tashkil etuvchi reaksiyalarni to‘playdi.
- Post qamrovi: Har bir post o‘rtacha 1 065 marta ko‘riladi; birinchi sutkada odatda 416 ta ko‘rish yig‘iladi.
- Reaksiyalar va o‘zaro ta’sir: Auditoriya faol: har bir postga o‘rtacha 5 ta reaksiya keladi.
- Tematik yo‘nalishlar: Kontent api, docker, github, sql, linux kabi asosiy mavzularga jamlangan.
📝 Tavsif va kontent siyosati
Muallif resursni shaxsiy fikrni ifoda etish maydoni sifatida ta’riflaydi:
“Все для python разработчиков
админ - @haarrp
@python_job_interview - Python собеседования
@ai_machinelearning_big_data - машинное обучение
@itchannels_telegram - 🔥лучшие ит-каналы
@programming_books_it - it книги
@pythonl
РКН: clck.ru/3Fmy2j”
Yuqori yangilanish chastotasi (oxirgi ma’lumot 27 Avgust, 2026 da olingan) sababli kanal doimo dolzarb va katta qamrovli bo‘lib qoladi. Analitika auditoriya kontent bilan faol hamkorlik qilishini, uni Texnologiyalar & Aralashmalar toifasidagi muhim ta’sir nuqtasiga aylantirishini ko‘rsatadi.
with, вы гарантируете, что файл будет закрыт автоматически, даже если произойдет ошибка.
from contextlib import contextmanager
@contextmanager
def open_file(filename):
try:
f = open(filename, 'r')
yield f
finally:
f.close()
with open_file('example.txt') as file:
data = file.read()
print(data)
https://www.youtube.com/shorts/I8j3Y6NunYg
a = [1, 2, 3]
b = a
a += [4, 5]
print(a)
print(b)
a = (1, 2, 3)
b = a
a += (4, 5)
print(a)
print(b)
Попробуй сначала сам ответить, а потом смотри разбор.
Часть 1. Списки
a = [1, 2, 3]
b = a
a += [4, 5]
print(a)
print(b)
Что происходит по шагам:
a = [1, 2, 3]
Переменная a ссылается на список [1, 2, 3].
b = a
Теперь b ссылается на тот же самый список, что и a.
Не копия, а один и тот же объект в памяти.
a += [4, 5]
Важно: для списков += работает как изменение объекта на месте:
это примерно то же самое, что:
a.extend([4, 5])
То есть в существующий список, на который ссылаются и a, и b, добавляются элементы 4 и 5.
Поэтому:
print(a) # [1, 2, 3, 4, 5]
print(b) # [1, 2, 3, 4, 5]
Оба указывают на один изменённый список.
Часть 2. Кортежи
a = (1, 2, 3)
b = a
a += (4, 5)
print(a)
print(b)
Кортежи неизменяемы, и здесь начинается магия.
a = (1, 2, 3)
a ссылается на кортеж (1, 2, 3).
b = a
b ссылается на тот же кортеж (1, 2, 3).
a += (4, 5)
Для кортежей += уже не может менять объект на месте (они immutable).
Поэтому Python делает так:
a = a + (4, 5)
То есть создаётся новый кортеж (1, 2, 3, 4, 5) и переменная a переназначается на него.
b при этом остаётся смотреть на старый кортеж (1, 2, 3).
Поэтому:
print(a) # (1, 2, 3, 4, 5)
print(b) # (1, 2, 3)
В чём хитрость
Для списка a += [4, 5] мутирует объект на месте, и это видно через все переменные, которые на него ссылаются.
Для кортежа a += (4, 5) создаёт новый объект и переназначает только a.
Итого:
# Часть со списком:
[1, 2, 3, 4, 5]
[1, 2, 3, 4, 5]
# Часть с кортежем:
(1, 2, 3, 4, 5)
(1, 2, 3)
Если хочешь, могу ещё один хитрый вопрос разобрать - про изменяемые значения по умолчанию в аргументах функции или про циклы и замыкания.
Плохо: индекс по email НЕ используется
SELECT *
FROM users
WHERE LOWER(email) = 'user@example.com';
-- Хорошо: нормализуем значение заранее
SELECT *
FROM users
WHERE email = 'user@example.com';
-- Или создаём функциональный индекс (PostgreSQL)
CREATE INDEX idx_users_email_lower ON users (LOWER(email));
import openai
from telegram import Update
from telegram.ext import ApplicationBuilder, MessageHandler, filters, ContextTypes
openai.api_key = "sk-..."
async def chatgpt_handler(update: Update, context: ContextTypes.DEFAULT_TYPE):
user_input = update.message.text
response = openai.ChatCompletion.create(
model="gpt-3.5-turbo",
messages=[{"role": "user", "content": user_input}]
)
await update.message.reply_text(response.choices[0].message.content)
app = ApplicationBuilder().token("TELEGRAM_BOT_TOKEN").build()
app.add_handler(MessageHandler(filters.TEXT & ~filters.COMMAND, chatgpt_handler))
app.run_polling()1️⃣20 ноября — день Бизнеса: разберём успешные кейсы внедрения, оценим эффективность и практические результаты. 2️⃣ 21 ноября — день Науки: проведём глубокий анализ IT-решений, прорывных научных исследований, R&D-разработок и передовых методик.На треке вас ждут выступления ведущих экспертов в AI, постер-сессия, специальные форматы для нетворкинга и выставка R’n’D решений. Это уникальная возможность обсудить сложные вопросы с теми, кто действительно понимает ваши вызовы. Где? Офис Сбера, Кутузовский проспект, д. 32, к. 1 (Е) Когда? 20–21 ноября 2025 года По ссылке — форма регистрации на очное участие. Присоединяйтесь к профессиональному AI-сообществу!
pytest --lfЭто ускоряет цикл разработки в разы. Делай минимум — получай максимум. Это путь зрелого Python-инженера. #python #pytest #unittesting #softwaretesting #devtips #engineering
