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

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

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

✍🏻 Вопросы и идеи: @MifmanRu
Download Telegram
Как сделать свой код более читаемым?

Читаемость кода – важный аспект программирования. Вот несколько советов, как сделать свой код более понятным:

🔹 Пишите понятные названия переменных: Используйте описательные названия, которые объясняют, что хранят переменные.
🔹 Структурируйте код: Разбивайте его на функции и модули.
🔹 Пишите комментарии: Подробные комментарии помогут вам и другим понять логику кода.

Следуйте этим простым рекомендациям, и ваш код станет более профессиональным!
Сообщество Python: где найти единомышленников?

Программистам важно иметь сообщество, где можно обмениваться опытом и получать поддержку. Вот несколько ресурсов для общения:

🔹 Reddit (r/python): Активное сообщество для обсуждения всего, что связано с Python.
🔹 Discord: Множество серверов, посвященных Python и программированию в целом.
🔹 Meetup: Находите местные группы и мероприятия по Python для общения и обмена опытом.

Не упускайте возможности общаться!
🔄 Как организовать свои проекты на GitHub

GitHub – отличный инструмент для хранения кода и работы над проектами. Вот несколько советов, как организовать свои репозитории: 🔧

📜 Создавайте понятные README-файлы: Объясняйте, что делает ваш проект и как начать работу с ним.
🐛 Используйте Issues: Отслеживайте ошибки и задачи, чтобы улучшить проект.
🌳 Создавайте отдельные ветки: Для разных функций и изменений, чтобы поддерживать порядок в коде.

Правильная организация проектов поможет вам быстрее развиваться!
🌐 Парсинг HTML с BeautifulSoup

Друзья, вы когда-нибудь задумывались, как получить данные с веб-страниц? В этом посте мы посмотрим на библиотеку BeautifulSoup, которая помогает извлекать информацию из HTML и XML документов. Давайте создадим небольшой скрипт, который будет извлекать заголовки новостей с сайта!

Установка BeautifulSoup

Для начала установим необходимые библиотеки. Если у вас их еще нет, выполните команду:

pip install beautifulsoup4 requests


Код программы

import requests # Импортируем библиотеку для отправки HTTP запросов
from bs4 import BeautifulSoup # Импортируем BeautifulSoup для парсинга HTML

# URL сайта, откуда мы будем извлекать данные
url = '

# Отправляем GET-запрос к указанному URL
response = requests.get(url)

# Проверяем, успешен ли запрос
if response.status_code == 200:
# Создаем объект BeautifulSoup для парсинга HTML
soup = BeautifulSoup(response.content, 'html.parser')

# Находим все заголовки новостей
headlines = soup.find_all('a', class_='storylink')

# Выводим заголовки на экран
for index, headline in enumerate(headlines, start=1):
print(f"{index}. {headline.get_text()}") # Получаем текст заголовка
else:
print("Не удалось получить данные с сайта.")


Объяснение кода

1. Импорт библиотек: Мы импортируем requests для работы с HTTP-запросами и BeautifulSoup для парсинга HTML.
2. URL: Указываем адрес сайта, откуда будем получать данные.
3. GET-запрос: Отправляем запрос и проверяем код ответа с помощью response.status_code. Если код 200, значит, запрос успешен.
4. Парсинг HTML: Используем BeautifulSoup для парсинга полученного HTML контента.
5. Извлечение заголовков: Команда soup.find_all находит все элементы с классом storylink, возвращая список заголовков.
6. Вывод заголовков: С помощью цикла for выводим номера и текст заголовков на экран.

Таким образом, используя несколько строк кода, мы получили заголовки новостей с сайта! Это отличный способ научиться веб-скрапингу.
Визуализация данных с Matplotlib

Привет, друзья! Сегодня мы поговорим о библиотеке Matplotlib, которая поможет нам визуализировать данные. Давайте создадим простой график, используя некоторые случайные данные.

Установка Matplotlib

Первое, что нужно сделать – установить библиотеку, если она у вас еще не установлена:

pip install matplotlib numpy


Код программы

import matplotlib.pyplot as plt # Импортируем библиотеку для визуализации
import numpy as np # Импортируем numpy для работы с массивами

# Генерация случайных данных
x = np.linspace(0, 10, 100) # Создаем массив из 100 точек от 0 до 10
y = np.sin(x) # Вычисляем синус для каждой точки x

# Создаем график
plt.figure(figsize=(10, 5)) # Устанавливаем размер графика
plt.plot(x, y, label='sin(x)', color='blue') # Строим график с подписью

# Добавляем заголовок и подписи осей
plt.noscript('График функции y = sin(x)')
plt.xlabel('x')
plt.ylabel('y')
plt.axhline(0, color='black',linewidth=0.5, ls='--') # Добавляем ось Y
plt.axvline(0, color='black',linewidth=0.5, ls='--') # Добавляем ось X
plt.grid(color = 'gray', linestyle = '--', linewidth = 0.5) # Добавляем сетку
plt.legend() # Показываем легенду
plt.show() # Отображаем график


Объяснение кода

1. Импорт библиотек: Импортируем matplotlib.pyplot как plt и numpy как BeautifulSoup0.
2. Генерация данных: С помощью BeautifulSoup1 создаем массив BeautifulSoup2 из 100 равномерно распределенных точек. Для BeautifulSoup3 вычисляем синус каждой из этих точек.
3. Создание графика: Используем BeautifulSoup4 для установки размеров графика, а затем BeautifulSoup5 для его построения.
4. Добавление элементов: Добавляем заголовок, подписи для осей, линии для осей и сетку для лучшей читаемости графика.
5. Показ графика: В конце используем BeautifulSoup6, чтобы отобразить наш график.

С помощью этих нескольких строк кода вы можете визуализировать данные и лучше понимать их! Это особенно полезно в научных и аналитических сферах.
🎡 5 полезных трюков с Python, о которых вы могли не знать

1. Объединение строк с помощью join

words = ['Hello', 'world']
result = ' '.join(words)
print(result) # "Hello world"

2. Распаковка списка в аргументы функции

def add(a, b):
return a + b
nums = [3, 5]
print(add(*nums)) # 8

3. Получение уникальных значений с помощью set

numbers = [1, 2, 2, 3, 4, 4, 5]
unique_numbers = list(set(numbers))
print(unique_numbers) # [1, 2, 3, 4, 5]

4. Использование else в цикле for

for i in range(5):
print(i)
else:
print("Цикл завершился без break")

5. Однострочник для переворота строки

text = "Python"
print(text[::-1]) # "nohtyP"
🚀 Создаём Telegram-бота с aiogram

Для начала установим aiogram:

pip install aiogram


Код:

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

TOKEN = "YOUR_BOT_TOKEN"
bot = Bot(token=TOKEN)
dp = Dispatcher(bot)

@dp.message_handler(commands=['start'])
async def send_welcome(message: types.Message):
await message.reply("Привет! Я ваш бот!")

if __name__ == "__main__":
executor.start_polling(dp, skip_updates=True)

Теперь бот будет отвечать на команду `/start`!
📌 Как эффективно писать комментарии в коде

1. Используйте понятные комментарии:

# Плохой комментарий:
a = 10 # переменная

# Хороший комментарий:
max_users = 10 # Максимальное число пользователей

2. Комментируйте сложные алгоритмы

def factorial(n):
# Вычисляет факториал числа n рекурсивно
return 1 if n == 0 else n * factorial(n - 1)

3. Используйте docstrings для функций

def add(a, b):
"""Функция складывает два числа."""
return a + b
🎨 Генерация QR-кодов с помощью Python

Устанавливаем библиотеку:

pip install qrcode[pil]


Код:

import qrcode

data = "
qr = qrcode.make(data)
qr.show()

Этот код создаст QR-код со ссылкой!
🔄 Использование декораторов в Python

1. Создаём простой декоратор:

def my_decorator(func):
def wrapper():
print("Перед вызовом функции")
func()
print("После вызова функции")
return wrapper

@my_decorator
def say_hello():
print("Привет!")

say_hello()

2. Декоратор для замера времени выполнения:

import time

def timer(func):
def wrapper(*args, **kwargs):
start = time.time()
result = func(*args, **kwargs)
end = time.time()
print(f"Время выполнения: {end - start} сек")
return result
return wrapper

@timer
def slow_function():
time.sleep(2)
print("Функция завершена")

slow_function()
📊 Построение графиков с Seaborn

Устанавливаем библиотеку:

pip install seaborn


Код:

import seaborn as sns
import matplotlib.pyplot as plt

df = sns.load_dataset("iris")
sns.pairplot(df, hue="species")
plt.show()

Этот код создаст красивые графики для анализа данных!
🔧 Разбираем list comprehensions

1. Создание списка квадратов:

squares = [x**2 for x in range(10)]

2. Фильтрация списка:

even_numbers = [x for x in range(10) if x % 2 == 0]

3. Работа с вложенными списками:

matrix = [[x for x in range(5)] for _ in range(3)]
🌍 Как работать с API в Python с requests

Устанавливаем библиотеку:

pip install requests


Код:

import requests
response = requests.get("
print(response.json())

Этот код отправит GET-запрос и выведет JSON-ответ!
📂 Как записывать и читать файлы в Python

1. Запись в файл:

with open("file.txt", "w") as f:
f.write("Hello, world!")

2. Чтение из файла:

with open("file.txt", "r") as f:
content = f.read()
print(content)
📜 Читаем и парсим JSON в Python


import json

json_data = '{"name": "Alice", "age": 25}'
data = json.loads(json_data)
print(data["name"]) # "Alice"

json_output = json.dumps(data, indent=4)
print(json_output)

Этот код преобразует JSON в словарь и обратно!
🔥 Стартуй в IT с CodeShadow!

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

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

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

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

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

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

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

👉 codeshadow.ru
📰 Антон Силуанов: ИИ будет использоваться при администрировании таможенных платежей

Министр финансов России Антон Силуанов на заседании коллегии Федеральной таможенной службы (ФТС) подвел итоги 2024 года и обозначил приоритеты на 2025 год. Одним из ключевых нововведений станет внедрение ИИ в процессы администрирования таможенных платежей. В 2024 году, несмотря на внешние ограничения, товарооборот России вырос на 2%, во многом благодаря эффективной работе таможенной службы. Планы по […]
Компьютерра

🔗
📰 Mail представил адресный шаринг в Документах

Mail представил функцию адресного шаринга в Документах: теперь пользователи могут делиться файлами, фотографиями и документами исключительно с выбранными адресатами, указанными по электронной почте. Пользователи Облака и Документов Mail теперь могут настраивать индивидуальные параметры доступа к файлам, фотографиям и документам. Новая функция позволяет делиться конфиденциальной информацией только с конкретными пользователями, указанными по электронной почте. Это обеспечивает […]
Компьютерра

🔗
📰 РОЦИТ обсудил применение ИИ в российских соцсетях

В медиацентре РОЦИТ состоялось заседание, посвященное теме использования ИИ в соцсетях.  Участники обсудили влияние генеративных технологий на регулирование, модерацию контента и защиту прав пользователей. Председатель правления РОЦИТ Антон Горелкин отметил, что ИИ уже активно используется в социальных сетях, не только для рекомендаций, но и для модерации, выявления фейковых аккаунтов и персонализации опыта. Однако он подчеркнул, […]
Компьютерра

🔗