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

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

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

✍🏻 Вопросы и идеи: @MifmanRu
Download Telegram
🔧 СКРИПТ: Удаление дубликатов файлов в папке

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

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:
- не требует компиляции вручную
- может запускаться на любом устройстве с интерпретатором
- удобен для динамического кода и отладки
📜 Почему важны аннотации типов?

Научпоп

Python не требует указывать типы, но вы можете это делать с помощью typing.

Зачем?

- Повышается читаемость
- Упрощается отладка
- Работают автоподсказки в IDE

Пример:
code
def greet(name: str) -> str:
return f"Привет, {name}"


Это не изменяет поведение кода, но улучшает разработку и командную работу.
🧪 Почему Python — лучший выбор для Data Science?

Научпоп

Потому что:
- numpy — быстрые массивы
- pandas — таблицы и датафреймы
- matplotlib и seaborn — графики
- scikit-learn — машинное обучение

Также поддерживается Jupyter Notebook — среда, где можно писать, запускать и документировать код.

Python стал "рабочей лошадкой" в мире данных.
👨‍💻 Дневник разработчика | День 1

Привет! Запускаю новую рубрику, где буду делиться тем, как из идей рождаются настоящие IT-проекты. Прямо изнутри — от первых строчек кода до боли от багов и радости релизов 🚀

🧩 Игровой Проект:
Создаю мини-онлайн игру на Python, где игроки попадают в генерируемый мир пещер — почти как пещеры из Minecraft, но принцип игры иной: это MOBA для программистов, где вам предстоит создавать логику своих роботов при помощи встроенных функций и алгоритмов, добывать ресурсы и строить оборону, чтобы противостоять врагам на соседних полях сражений!

Игра будет схожа с Screeps

Что уже работает:
Генерация карты (да-да, даже с шумом и сглаживанием!)
Разделение мира на «комнаты»
Сервер на Flask, игроки подключаются по WebSocket
Первые боты в мире игры (правда, пока без кода 😅)

Что впереди:
🔜 Создание своего ЯП для создания логики
🔜 Доработка генерации пещер для создания в них руд и источников энергии
🔜 Создание интерфейса игры (на данный момент реализовано только показ комнаты)

💬 Хочешь видеть, как создаются IT-проекты шаг за шагом? Подписывайся и следи за дневником. Тут будет и код, и фейлы, и настоящая жизнь разработчика.

#CodeShadow #Python #GameDev #ДневникРазработчика
📦 Создание ZIP-архива с помощью Python

Иногда нужно быстро заархивировать файлы.

Пример:
code
import zipfile

with zipfile.ZipFile("archive.zip", "w") as zipf:
zipf.write("file1.txt")
zipf.write("file2.txt")


А чтобы распаковать:
code
with zipfile.ZipFile("archive.zip", "r") as zipf:
zipf.extractall("output_folder")


Библиотека `zipfile` встроена в Python.
CodeShadow pinned «👨‍💻 Дневник разработчика | День 1 Привет! Запускаю новую рубрику, где буду делиться тем, как из идей рождаются настоящие IT-проекты. Прямо изнутри — от первых строчек кода до боли от багов и радости релизов 🚀 🧩 Игровой Проект: Создаю мини-онлайн игру на…»
👨‍💻 Дневник разработчика | День 1.5

Продолжаем погружаться в разработку новых фичей и улучшение существующих решений на платформе CodeShadow! Сегодня расскажу о свежих изменениях, которые сделают вашу работу ещё удобнее и продуктивнее.

🖍 Новая фича: Поляна для текста
Выделяйте нужные сущности, редактируйте их свойства и сразу наблюдайте изменения в проекте. Никаких больше долгих операций с исходниками — всё настраивается в одном месте.

🗑 Улучшение инструментария: Возможность уничтожения объектов
Иногда лучше удалить лишнюю сущность, чем тратить время на её исправление. Теперь эта задача решается парой кликов. Меньше мусора — больше производительности!

Эти нововведения помогут вам сэкономить массу времени и сосредоточиться на самом важном — создании крутых проектов и реализации ваших лучших идей.

💬 А какими инструментами пользуетесь именно вы? Какие фичи хотели бы увидеть дальше? Пишите комментарии и делитесь идеями!

#CodeShadow #Python #ProjectDevelopment #ДневникРазработчика
📡 Парсинг сайта с BeautifulSoup

Получим заголовки с сайта quotes.toscrape.com:

code
import requests
from bs4 import BeautifulSoup

url = "
html = requests.get(url).text

soup = BeautifulSoup(html, "html.parser")
quotes = soup.find_all("span", class_="text")

for q in quotes:
print(q.text)


Отличный пример для новичков, чтобы познакомиться с парсингом HTML.