CodeShadow – Telegram
CodeShadow
76 subscribers
182 photos
11 videos
7 files
128 links
👋 Я Артемий — преподаватель Python и фрилансер.

💻 Показываю, как код и нейросети помогают зарабатывать и упрощать работу.

🚀 Делюсь проектами, опытом и лайфхаками из реальной практики.

✍🏻 Вопросы и идеи: @MifmanRu
Download Telegram
🧩 Как использовать assert

📌 Пример:
code
def divide(a, b):
assert b != 0, "Деление на ноль недопустимо"
return a / b

print(divide(10, 2))
# print(divide(10, 0)) # AssertionError


assert удобно использовать при тестировании и отладке.
📰 Павел Дуров анонсировал партнерство Telegram с xAI Илона Маска

Основатель Telegram Павел Дуров заключил годовое соглашение с компанией xAI Илона Маска. В рамках сотрудничества в мессенджере появится чат-бот Grok, а Telegram получит $300 млн и половину доходов от подписок xAI. Основатель Telegram Павел Дуров объявил о годовом сотрудничестве с компанией xAI Илона Маска. В рамках партнерства в мессенджере появится чат-бот Grok, а Telegram получит $300 […]
Компьютерра

🔗 https://www.computerra.ru/315315/pavel-durov-anonsiroval-partnerstvo-telegram-s-xai-ilona-maska/
🔹 ПОЛЕЗНЫЙ СКРИПТ НА PYTHON: Автоматическое переименование файлов

Храните кучу файлов с непонятными названиями вроде `IMG_20210405_123456.jpg`? Сделаем скрипт, который переименует их в нормальный вид.

python
import os

folder = "photos"
files = os.listdir(folder)

for i, filename in enumerate(files, start=1):
ext = os.path.splitext(filename)[1]
new_name = f"photo_{i}{ext}"
os.rename(os.path.join(folder, filename), os.path.join(folder, new_name))

print("Готово!")


🔍 Как работает:
1. Считываем список файлов в папке `photos`.
2. Проходимся по ним с помощью `enumerate()`, чтобы получить и индекс, и имя.
3. Формируем новое имя вида `photo_1.jpg`, `photo_2.jpg` и т.д.
4. Переименовываем файл через `os.rename`.

📂 Теперь ваши файлы не в хаосе, а в порядке!
🎓 Хочешь выучить программирование?

🚀 Добро пожаловать в CodeShadow — индивидуальные курсы и репетиторство по Python, JavaScript, HTML, SQL и другим языкам!

🔹 Ты новичок? Научим с нуля — без скуки и воды.
🔹 Уже пишешь код? Поможем разобраться в любой теме: от ООП до асинхронности.
🔹 Готовишься к собеседованию или проекту? Разберём реальные задачи, а не "абстрактные примеры".

🧠 Преподавание = объяснение на простом языке + практика + поддержка.

📌 Что тебя ждёт:
• Индивидуальный подход
• Удобный график
• Домашки с обратной связью
• Мини-проекты и работа с реальным кодом

💬 Отзывы учеников:

“С нуля до Telegram-бота за месяц!”
“Разобрался в Django за неделю — спасибо, CodeShadow!”

📲 Запишись на пробное занятие прямо сейчас!
Напиши 👉 @MifmanRu и изучай Python вместе с нашей командой 💎
🤖 НАПИШЕМ САМОГО ПРОСТОГО TELEGRAM-БОТА

С помощью библиотеки `aiogram` создадим бота, который отвечает на любое сообщение.

python
from aiogram import Bot, Dispatcher, types
from aiogram.types import Message
from aiogram.utils import executor

bot = Bot(token="ВАШ_ТОКЕН")
dp = Dispatcher(bot)

@dp.message()
async def echo(message: Message):
await message.answer(f"Вы написали: {message.text}")

executor.start_polling(dp)


🔍 Что здесь происходит:
- Подключаем `aiogram`, создаём бота с токеном.
- Любое сообщение, которое получает бот, он дублирует обратно отправителю.

📌 Такой бот — хорошая основа для чего угодно: помощник, игра, обучалка.
📚 НАУЧПОП: ПОЧЕМУ PYTHON ТАК ПОПУЛЯРЕН?

Python — один из самых любимых языков программирования в мире. Почему?

🔸 Простота синтаксиса:
`print("Привет")` — вот и готовая программа!

🔸 Универсальность:
- Веб (Django, Flask)
- Аналитика и ML (pandas, sklearn)
- Автоматизация (скрипты, боты)
- Геймдев (Pygame)

🔸 Сообщество:
Тысячи бесплатных библиотек, решений и гайдов — стартовать легко.

🧠 Python подкупает тем, что ты сразу пишешь работающий код и получаешь результат. А это важно — видеть прогресс.
💬 СКРИПТ: Автоответчик для Telegram по ключевым словам

Если хочешь, чтобы бот отвечал по ключевым словам — держи пример:

python
@dp.message()
async def keyword_reply(message: types.Message):
text = message.text.lower()
if "привет" in text:
await message.answer("Привет! Рад тебя видеть 👋")
elif "помощь" in text:
await message.answer("Я могу помочь тебе с Python!")
else:
await message.answer("Я тебя не понял 😅")


🔍 Используем:
- Преобразование в нижний регистр (`lower()`)
- Поиск подстроки
- Простые `if-elif-else`

📌 Такой скрипт легко масштабируется: добавь словарь с фразами и ответами — и ты почти сделал чат-бота!
🧠 НАУЧПОП: ЧТО ТАКОЕ ИНТЕРПРЕТАТОР?

Python — это **интерпретируемый язык**, а значит, он читает код **построчно**.

Что это даёт?
Проще отлаживать (ошибка на 5-й строке не мешает запустить первые 4)
Можно работать в интерактивной консоли (REPL)
Быстрый старт

Что это забирает?
Python медленнее C++ или Java в вычислениях

Но если ты не пишешь движок для ракеты — тебе важнее скорость разработки, а не исполнения 😎
🔧 СКРИПТ: Удаление дубликатов файлов в папке

Занимают память одинаковые фото? Напиши скрипт, который удалит дубликаты:

python
import os
import hashlib

def file_hash(filename):
with open(filename, 'rb') as f:
return hashlib.md5(f.read()).hexdigest()

folder = "images"
seen = {}
for file in os.listdir(folder):
path = os.path.join(folder, file)
h = file_hash(path)
if h in seen:
os.remove(path)
print(f"Удалён дубликат: {file}")
else:
seen[h] = file


🔍 Суть:
1. Считаем MD5-хэш каждого файла.
2. Если такой уже был — удаляем.

📂 Папка стала легче. Скрипт можно использовать регулярно!
🌐 СКРИПТ: Получить IP-адрес сайта

Иногда нужно узнать, куда на самом деле ведёт сайт. Это просто:

python
import socket

domain = "example.com"
ip = socket.gethostbyname(domain)
print(f"{domain} -> {ip}")


🔍 `socket.gethostbyname()` возвращает IP по доменному имени.

💡 Полезно для:
- Диагностики
- Тестов безопасности
- Понимания, как работает DNS
📁 СКРИПТ: Создать резервную копию папки в .zip

Нужен автосейв папки? Вот простой способ:

python
import shutil
import datetime

src = "my_folder"
dst = f"backup_{datetime.date.today()}.zip"
shutil.make_archive(dst.replace('.zip', ''), 'zip', src)

print(f"Резервная копия создана: {dst}")


🔍 Используем:
- `shutil.make_archive` — архиватор
- `datetime` — для даты

🧳 Такой бэкап можно настроить в планировщике задач или cron.
🧠 НАУЧПОП: ПОЧЕМУ БОТЫ УДОБНЕЕ ПРИЛОЖЕНИЙ?

🤖 Telegram-боты часто удобнее, чем отдельные приложения:

Не надо ставить (работают в любом мессенджере)
Поддержка команд, кнопок, inline-режимов
Удобны для микро-задач: "узнать курс", "скачать PDF", "сделать резюме"

📌 Боты отлично подходят для автоматизации и личных помощников. А главное — делать их проще, чем кажется!
🧠 СОВЕТ: КАК НАУЧИТЬСЯ ПИСАТЬ КОД НА PYTHON?

1. 🔁 Пиши каждый день. Даже 20 минут в день — прогресс.
2. 🔍 Читай чужой код — он учит структуре.
3. Делай мини-проекты:
- Калькулятор
- Telegram-бот
- Сканер файлов
4. Не бойся спрашивать: StackOverflow, чаты, форумы
5. 🎯 Используй реальные задачи. Код ради пользы — лучший мотиватор!

🔥 Ты учишься не просто языку, а инструменту для решения задач. Главное — регулярность и интерес!
🔥 Стартуй в IT с CodeShadow!

Мечтаешь освоить программирование, но не знаешь, с чего начать?
CodeShadow — твой проводник в мир Python и IT-технологий!

🚀 Наши курсы:
• Python с нуля — пиши первые программы уже через месяц!
• PySQL — управляй базами данных как профи.
• Telegram-боты — создавай умных помощников с нуля.
• Кураторство проектов — реализуй свою идею с поддержкой ментора.

Почему мы?
— Обучение без стресса: теория + практика на реальных кейсах.
— Гибкий график и доступ к материалам навсегда.
— Наставники рядом 24/7.
— Актуальные курсы: от нейросетей до крипто-трейдинга.

💻 Наши проекты говорят за нас:
• Бот для Steam-скидок,
• Торговый крипто-бот,
• Генетические алгоритмы на Python.

🎁 Специальные акции и скидки — на сайте!

Не просто учись — создавай, внедряй, расти!
С CodeShadow ты не станешь «еще одним учеником» — ты станешь разработчиком.

👉 Жми на ссылку и выбери свой курс!
Программирование — это не магия. Это CodeShadow.

👉 @MifmanRu
Channel name was changed to «CodeShadow | Кодим вместе»
🔥 Добро пожаловать в CodeShadow! 🎯

💻 Здесь мы:
Делимся полезным кодом
Учим программировать на Python 🐍
Проводим крутые проекты-буткемпы ⚡️
Веселимся от души 😊

Присоединяйся — найди друзей, прокачай скиллы и получи заряд позитива!

#codeshadow #pythoncodeshadow #программированиеcodeshadow #кодингcodeshadow
🧬 Почему Python называют "языком для всего"?

Научпоп

Python используют повсеместно — от веб-разработки до биоинформатики. Почему?

1. Универсальный синтаксис
2. Поддержка множества областей: AI, финансы, наука
3. Большое сообщество и документация

С помощью Python можно:
- написать Telegram-бота
- анализировать данные с телескопа
- обучить нейросеть

Один язык — бесконечные возможности.
🧠 Что такое "утиная типизация" и как она работает в Python?

Научпоп

В Python используется принцип "утиная типизация":
> "Если объект ведёт себя как утка — он утка"

Это значит, что вас не волнует тип объекта — главное, чтобы он умел нужные методы.

Пример:
code
def quack(animal):
animal.quack()

class Duck:
def quack(self):
print("Кря!")

class Person:
def quack(self):
print("Я умею крякать")

quack(Duck()) # Кря!
quack(Person()) # Я умею крякать


Это делает Python гибким, но требует внимания при написании кода.
🔢 Как работает округление чисел в Python?

Научпоп

В Python есть встроенная функция round(), но она не всегда округляет "по-человечески".

code
print(round(2.5)) # 2
print(round(3.5)) # 4


Почему? Потому что используется "банковское округление" — значения на 0.5 округляются к ближайшему чётному.

Это помогает уменьшать статистические искажения при работе с большими объёмами данных.

Для традиционного округления можно использовать decimal с ROUND_HALF_UP.
🎓 Чем Python отличается от Java и C++?

**Научпоп**

🔹 Python — интерпретируемый, Java и C++ — компилируемые
🔹 Python медленнее, но проще
🔹 Java и C++ требуют строгой типизации и явного управления памятью

Пример на Python:
code
print("Hello, world!")


То же на C++:
cpp
#include <iostream>
int main() {
std::cout << "Hello, world!";
return 0;
}


Python подходит для быстрого прототипирования и науки. Java и C++ — для системного и масштабного софта.
💻 Как Python исполняет ваш код?

Научпоп

Когда вы запускаете .py файл:
1. Python компилирует код в байт-код (.pyc)
2. Байт-код передаётся в интерпретатор (Python Virtual Machine)
3. Интерпретатор выполняет инструкции построчно

Поэтому Python:
- не требует компиляции вручную
- может запускаться на любом устройстве с интерпретатором
- удобен для динамического кода и отладки