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

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

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

✍🏻 Вопросы и идеи: @MifmanRu
Download Telegram
🎓 Чем 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.
🔐 Проверка JSON Web Token (JWT) без библиотеки

JWT — способ передавать информацию между сервисами. Проверим подпись вручную:

code
import base64
import hmac
import hashlib

def verify_signature(header, payload, signature, secret):
msg = f"{header}.{payload}".encode()
expected = hmac.new(secret.encode(), msg, hashlib.sha256).digest()
return base64.urlsafe_b64encode(expected).rstrip(b"=") == signature.encode()

# Пример использования:
# payload = base64url, secret = "ключ"


В реальных проектах используйте `PyJWT` или `Authlib`.
🔥 Python: почему программисты выбирают именно этот язык?

📌 #python #программирование

Python — один из самых популярных языков программирования, который активно используется разработчиками во всём мире. Его популярность обусловлена простотой синтаксиса, высокой производительностью и широкой областью применения. Сегодня мы рассмотрим основные причины, почему многие разработчики отдают предпочтение именно этому языку.

💻 Простота и понятность

Одна из главных особенностей Python — лёгкость изучения. Благодаря лаконичному и интуитивно понятному синтаксису даже новички быстро осваиваются и начинают писать программы уже через несколько дней после начала изучения. К примеру, простой цикл в Python выглядит так:

python
for i in range(10):
print(i)


Такой код легко читать и понимать, что делает Python идеальным выбором для начинающих разработчиков.

⚙️ Мощная экосистема библиотек

Python предлагает огромное количество готовых решений практически для любых задач. От анализа данных до машинного обучения и веб-разработки — есть библиотеки на любой вкус:
NumPy и Pandas помогают анализировать данные,
Django и Flask используются для создания мощных веб-приложений,
TensorFlow и PyTorch применяются в разработке моделей искусственного интеллекта.

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

🤖 Универсальность и многозадачность

С помощью Python можно разрабатывать разные типы приложений:
Веб-сервисы (сайты, API),
Скрипты автоматизации,
Программы обработки больших объёмов данных,
Игры,
Искусственный интеллект и машинное обучение.

Этот универсальный подход объясняет, почему Python востребован среди стартапов и крупных компаний вроде Google, Яндекс и Mail.ru Group.

🎯 Масштабируемость и производительность

Хотя Python интерпретируется, существуют инструменты, позволяющие повысить производительность критически важных участков кода. Например, Cython помогает компилировать части программы на C, обеспечивая значительное ускорение работы приложения.

Кроме того, благодаря своему удобству и легкости интеграции Python широко применяется для разработки прототипов новых продуктов и тестирования гипотез перед масштабной разработкой.

Итог

Python — мощный инструмент, который продолжает оставаться популярным среди профессионалов и новичков. Этот язык идеально подходит для решения широкого спектра задач, от простых скриптов до сложных проектов в области науки о данных и ИИ.

А какой ваш любимый проект на Python? Делитесь в комментариях! 😉
📝 Команда CodeShadow — Дневник разработчика

Разработчик Артемий делится успехами и сложностями игровой разработки с использованием Python и GPT-интерпретатора.

🎮 В рамках проекта создана система команд и API. Уже работают базовые инструкции: перемещение (go()) и вывод сообщений (log()). Иногда возникает забавная ошибка — команды дублируются. Будем искать причину вместе!

🏁 Основные достижения:

Устранён визуальный артефакт с «призраками» ботов.

Корректно работают if и while, что открывает простор для написания стратегий поведения.

Пример простого скрипта:

log('Готов вкалывать...')
go(3, 'up')
log('Готово!')


Пример движения до встречи с противником:

while not enemy_in_radius(self):
go(1, 'left')


☝️ Впереди — обновление данных игрока и полировка деталей. Есть идеи или советы? Присоединяйтесь к обсуждению!

Следите за новостями и будьте в центре разработки!

#TeamCodeShadow #ДневникРазработчика #Python #GPT #ИгроваяРазработка
1
🧬 Зачем Python в биоинформатике?

Научпоп

Python активно используется в биоинформатике: геномика, анализ ДНК, моделирование белков. Почему?

- Прост в использовании для биологов, не программистов
- Есть библиотеки: Biopython, PyMOL, scikit-bio
- Хорошо работает с большими объёмами последовательностей

Пример: чтение FASTA-файлов

code
from Bio import SeqIO

for record in SeqIO.parse("example.fasta", "fasta"):
print(record.id, len(record.seq))


Python — мост между биологией и кодом.
🛠 CodeShadow — хроники разработки

Продолжаем работу над нашей игрой, и вот что удалось продвинуть за последние дни:

⚙️ Отладили интерпретатор и пересобрали логику подключения игроков. Теперь при входе в игру каждому пользователю автоматически назначается своя база и один бот, с которых начинается путь.

🏠 Между игроком и его базой реализан надёжный коннект — через флаг-систему, которая определяет принадлежность объектов. Теперь у каждого игрока — своя база, отмеченная флагом, и это даёт фундамент для персонального управления.

👾 Враги и союзные боты пока в разработке, как и корректная логика генерации баз: планируем реализовать принцип "одна комната — одна база".

🎨 Обновили шаблон комнаты и начали заменять заглушки на настоящие спрайты. Кстати, нашли отличный AI-сервис для генерации графики — теперь будет не только функционально, но и красиво!

💬 Следите за обновлениями и пишите, если есть идеи или мысли — мы всё читаем!

#CodeShadow #GameDev #Python #GPT #ДневникРазработчика #ИграВРазработке
👍1
🧠 Зачем Python используют в нейронауке?

Научпоп

Нейронаука — исследование работы мозга. Учёные используют Python для анализа сигналов ЭЭГ, моделирования нейронов и визуализации мозга.

Библиотеки:
- MNE-Python — работа с ЭЭГ
- Brian2 — симуляция нейросетей
- Nilearn — работа с МРТ

Python помогает анализировать гигабайты данных мозга, строить 3D модели и исследовать сознание на уровне нейронов.
🔭 Что Python делает в астрономии?

Научпоп

В обсерваториях Python используется для:

- обработки изображений с телескопов
- построения орбит и движения тел
- моделирования столкновений галактик

Библиотеки:
- Astropy
- SunPy
- Skyfield

Пример: загрузка эфемерид

code
from skyfield.api import load

planets = load('de421.bsp')
earth, mars = planets['earth'], planets['mars']
t = load.timescale().now()
print(earth.at(t).observe(mars).apparent())


Да, Python смотрит на звёзды!
🔐 Как Python помогает взламывать Wi-Fi? (в рамках этичного хакинга)

Научпоп

Python используют в тестировании безопасности Wi-Fi сетей:

- захват хендшейков (через subprocess)
- словарные атаки (brute-force)
- анализ трафика (scapy)

Пример (упрощённый, неопасный):

code
import subprocess

networks = subprocess.check_output(["nmcli", "-t", "-f", "SSID", "dev", "wifi"])
print(networks.decode().splitlines())


Используйте эти знания для защиты, а не взлома.
🪙 Python в криптографии: от Цезаря до RSA

Научпоп

Python идеален для обучения криптографии. Можно реализовать все известные шифры — от простых до настоящих.

Пример: шифр Цезаря

code
def caesar_encrypt(text, shift):
return ''.join(
chr((ord(c) - 65 + shift) % 26 + 65) if c.isupper() else c
for c in text
)

print(caesar_encrypt("HELLO", 3)) # KHOOR


Также доступны библиотеки: cryptography, PyCryptodome, hashlib.
🧮 Можно ли создать свой язык программирования на Python?

Научпоп

Да! Python позволяет:
- создать парсер (через `lark` или `ply`)
- интерпретатор (на базе `ast` или `eval`)
- собственную виртуальную машину

Пример: мини-язык на основе словаря операций

code
def run(code):
env = {"x": 0}
for line in code:
exec(line, {}, env)
return env

print(run(["x = 2", "x = x * 10"])) # {'x': 20}


Своими руками — свой язык.