Авторский канал по разработке на Python. Ресурсы, обучения, задачи, шпаргалки. Ежедневно информация пополняется! Автор: @energy_it
😄 Нашел очередную статью по питончику, в которой вы научитесь делать рабочий тетрис в QR-коде!
Она включает в себя:• Создание, редактирование и отображение QR-кода через библиотеку qrcode
• Анимирование QR-кода с помощью модуля imageio
• Руководство по «игре» в тетрис
🔊 Интересно? Продолжай читать на Habr!
Уже были разные сайты, и пришло время быстренько изучить Git
learngitbranching — небольшая браузерная игра, которая поможет вам изучить Git. В ней вы познакомитесь с основными командами, которые пригодятся вам в повседневной работе.
📌 Оставляю ссылочку: learngitbranching.js
👉 Python Ready | #ресурс
Архитектура Личности — авторский канал про живые знакомства, развитие мужской привлекательности и социальных навыков.
Лонгриды о том как прокачать обаяние, коммуникабельность, внутреннюю свободу и уверенность в себе:
/channel/+JKURNZxGLcgwMWJi
👩💻 Вспомним исключения в Python и их причины!Исключения — важный инструмент для написания надежного и устойчивого к ошибкам кода. В Python много встроенных исключений, предусматривающих все возможные ошибки, их мы в этом посте и разберем!
👉 Python Ready | #шпора
А вы используете Python для математических операций?
#новичкам
Поговорим о возможностях встроенной библиотеки math:
Модуль math — основной инструмент для работы с числами и математикой в Python, так называемая база, которая позволяет производить как простые операции, так и более сложные алгоритмы.
Основные функции:
• ceil, floor — округляет переданные числа вверх и вниз.
• sqrt, pow — вычисляет квадратный корень и возводит в степень переданное число.
• factorial — вычисляет произведение всех подряд чисел до переданного.
Git How To — сайт, который предлагает пошаговые руководства и практические примеры для изучения системы контроля версий Git, облегчая процесс освоения её основных команд и функционала.
📌 Ссылочка: githowto.com
👉 Python Ready | #ресурс
💡 Лучшие Менторы выложили в открытый доступ свои базы знаний
10 000+ вопросов с собеседований и 1 000+ курсов и материалов по самым популярным направлениям:
👩💻 C# 🤖 ML Engineer
👩💻 C/C++ 🖥 Data Science
👩💻 Java 👩💻 Python
🖥 PHP 👩💻 Frontend
👣 Rust 👣 Golang
🖥 Ruby 👩💻 Node.js
👩💻 QA 👩💻 Android
👩💻 iOS 👩💻 Game Dev
💻 DevOps 🖥 Общее IT
📆 Митапы 👨💻 Вакансии
Всё, что нужно для подготовки к собеседованию — в одном месте!
💬 Выбирай направление и становись частью IT
😎 На Хабре нашлась полезная статья, в которой автор подробно объясняет создание игры "Морской бой" на Python
В этой статье:• Как реализовать игру по сети со случайным соперником или с другом
• Какие нужны таблицы в БД и как построить связи между ними
• Как связать фронт с бэком
🔊 Интересно? Продолжай читать на Habr!
Банальный, но всё равно хороший и полезный сайт с задачами — CodeWars
Это одна из лучших платформ с различными заданиями по программированию, там вы можете улучшать свой ранг, выполняя практические задания прямо на сайте.
📌 Ссылочка: codewars.com
👉 Python Ready | #ресурс
😎 Нашел для вас хорошую статью на хабре, где автор показывает, как создать игру змейка на Python!
В этой статье:• Разбор алгоритма «Оторванный Хвост»
• Алгоритм, реализующий логику перемещения змейки
• Код самой игры на Python
🔊 Если интересно, продолжай читать на Habr!
👩💻 Python для начинающихПлейлист из 24 видео, который предлагает вводное изучение программирования, охватывая основные концепции и навыки, необходимые для создания проектов.
Ссылочка на плейлист: YouTube 🖤
Datacamp — платформа для изучения Python и баз данных SQL. На сайте есть много практических заданий, которые можно решать во встроенном редакторе, где есть нейросеть, указывающая на ошибки в коде.
📌 Ссылочка: datacamp.com
👉 Python Ready | #ресурс
👩💻 AIOGRAM 3. Полный курсПлейлист из 12 уроков, в которых вы с нуля научитесь создавать телеграм-ботов с помощью фреймворка Aiogram.
Ссылочка на плейлист: YouTube 🖤
Draw DB — сайт, который представляет собой интерактивную платформу, позволяющую пользователям создавать и делиться графическими схемами и диаграммами, облегчая визуализацию идей и концепций.
📌 Ссылочка: drawdb.app
👉 Python Ready | #ресурс
Решаем алгоритмические задачи с собеседований в канале Backend Interviewer
Научитесь успешно проходить секции лайвкодинг!
Присоединяйтесь @backend_interviewer
🐍 824 ГБ платного контента для Python-разработчиков утекли в Telegram
Выбирай нужное и обучайся:
🤩62 ГБ — Основы Python
🤩98 ГБ — Django, Flask, FastApi
🤩71 ГБ — ИИ и Машинное обучение
🤩62 ГБ — Разработка софта и сайтов
🤩33 ГБ — Аналитика данных
🤩51 ГБ — Автоматизация процессов
🤩47 ГБ — Тестирование ПО
🤩17 ГБ — Разработка ботов
🤩31 ГБ — Разработка игр
🤩14 ГБ — Пентестинг
🤩22 ГБ — Парсинг веб-сайтов
🤩37 ГБ — DevOps, CI/CD
🤩279 ГБ — Многое другое...
🔒 Успей подписаться, пока не удалили
Сэкономь время и нервы, просто сделав бэкап перед изменением!
#средничкам
Создадим функцию для резервного копирования файла перед его изменением. Для этого импортируем библиотеки shutil
, os
, datetime
Функция будет принимать файл и делать его копию. Можно вызывать ее во время открытия файла через контекстный менеджер, если планируется перезапись файла:
def file_backup(filepath):
if not os.path.exists(filepath):
return f'{filepath} не существует'
if not os.path.exists('backups'):
os.mkdirs('backups')
filename, file_extension = os.path.splitext(filepath)
timestamp = datetime.datetime.now().strftime('%Y%m%d_%H%M%S')
backup_filepath = os.path.join('backups', f'{filename}_{timestamp}{file_extension}')
shutil.copy2(filepath, backup_filepath)
file_backup(important_documents.txt)
👩💻 Вспомним два полезных метода строк — find и replace
Оба метода принимают подстроку, но find
— находит и возвращает индекс первого совпадения с подстрокой, а replace
— заменяет найденную подстроку на новую:• find
— возвращает индекс найденного совпадения, принимает необязательные аргументы — интервалы поиска и возвращает -1
, если ничего не найдет.• replace
— возвращает копию исходной строки с новой подстрокой вместо прежней.
🔥 — если узнал новое
🤝 — если уже пользовался
👉 Python Ready | #метод
👍 Интересная статья с просторов Хабра. В ней автор понятно рассказывает, как создать свою нейросеть.
В этой статье:• Создадите класс нейронной сети с нуля без библиотек глубокого обучения, такой как TensorFlow.
• Сформируете данные для обучения ИИ
• И обучите нейросеть
🔊 Продолжить читать можешь на Habr!
• infosec - это один из самых ламповых каналов по информационной безопасности, где говорят об истории ИТ, публикуют актуальные новости и пишут технический материал на разные темы:
- Что из себя представляет официально взломанный iPhone от Apple?
- К чему могла привести опечатка в инфраструктуре платёжной системы MasterCard?
- Авторский материал для ИБ специалистов с закрытого хакерского форума XSS;
- Бесплатный бот, который проверит файлы на предмет угроз более чем 70 антивирусами одновременно.
• А еще у нас часто проходят розыгрыши самых актуальных и новых книг для ИБ специалистов. Так что присоединяйся, у нас интересно!
Я тебя по IP вычислю!!!
#новичкам
Учимся вычислять местоположение по IP-адресу. Первым делом устанавливаем и импортируем библиотеку request для запросов к ipinfo,io:
import requests
def get_location_from_ip(ip_address):
try:
url = f"https://ipinfo.io/{ip_address}"
response = requests.get(url)
data = response.json()
json
. Проверим здесь же, есть ли в этих данных страна, город или координаты:params = ['country', 'city', 'region', 'loc']
location = []
for i in params:
location.append(data.get(i, None))
return location
except Exception as e:
return f"Ошибка при получении местоположения: {e}"
ip_address = "1.1.1.1"
location = get_location_from_ip(ip_address)
print(f"Местоположение для IP-адреса {ip_address}: {location}")
Местоположение для IP-адреса 1.1.1.1: ['AU', 'Brisbane', 'Queensland', '-27.4820,153.0136']
👩💻 Объектно-ориентированное программирование на PythonПлейлист из 40 видео, в которых вы познакомитесь с концепцией ООП — изучите классы, объекты и множество методов.
Ссылочка на плейлист: YouTube 🖤
👩💻 Я в потоке и процессе — методы Thread и Process
Одновременный запуск функций позволяет сократить время выполнения программы, что повышает ее производительность. Эти методы позволяют работать коду одновременно, разберемся как они работают:
• Thread
— запускает указанную функцию в потоке в рамках одного процесса. Таких потоков может быть много и это реально сокращает время работы программы, но запуск многого числа может привести к проблемам.
• Process
— запускает программу в отдельном процессе, используя все ресурсы ядра процессора. В большинстве случаев таких мощностей не требуется, но это может быть полезным для обработки CPU-bound операций.
🔥 — если узнал новое
🤝 — если уже пользовался
👉 Python Ready | #метод
Покажу репозиторий для созданис исполняемых файлов из Python-кода — PyInstaller
Это мощный инструмент, позволяющий упаковывать Python-программы в самодостаточные исполняемые файлы, которые могут запускаться без предварительно установленного интерпретатора.
Ссылочка на репозиторий: Github 😸
Сегодня поговорим про ООП в питоне и вспомним, что такое classmethod и staticmethod
#средничкамClassmethod
и staticmethod
— инструменты, которые помогают писать более организованный, читаемый и поддерживаемый код. Они позволяют четко определить роль метода в классе и упростить его использование.
Предположим, у нас есть класс Date
для работы с датами и нам нужен метод, преобразующий строки формата "ГГГГ-ММ-ДД" в объекты Date
:
@staticmethod
def from_string(date_string):
year, month, day = map(int, date_string.split("-"))
date = Date(year, month, day)
return date
self
, чтобы выполнить свою работу, но при этом он логически связан с классом Date, staticmethod
— лучшее решение в таком случае:date_string = "2023-10-27"
date_object = Date.from_string(date_string) # Вызываем метод из класса
Classmethod
удобно использовать, например для создания альтернативного конструктора:class Convert:
def __init__(self, value):
self.value = value
@classmethod
def from_string(cls, value_str):
value = int(value_str)
return cls(value)
cls
и строку, затем преобразует ее в число:int_object = Convert.from_string("56")
👩💻 Все основные методы множеств помним?Если нет, то эта шпаргалка может помочь с этим, где мы рассмотрим методы множеств в python. Это неупорядоченные коллекции, которые не хранят в себе повторяющиеся элементы.
👉 Python Ready | #шпора
👩💻 А вы сталкивались с обработкой изображений в своих проектах?
Сегодня как раз рассмотрим библиотеку Pillow в Python:
Это удобный инструмент для обработки изображений. С помощью него можно сжать изображение перед загрузкой в базу данных или сконвертировать его в разные цветовые режимы, например в CYMK — для цветной печати.
Основные его функции:
• resize() — изменяет разрешение изображения, можно сжать перед загрузкой в БД.
• crop() — обрезает изображение, полезно, если нужно унифицировать размер, например сделать его квадратным.
• rotate() — используется для переворота, например на 90 градусов.
• convert('RGB') — конвертирует изображение в режим RGB - подходит для быстрой обработки или наложения фильтров.
👩💻 Полезные функции из библиотеки itertoolsШпаргалка по основным функциям модуля itertools, которые позволяют работать с итерируемыми объектами, облегчая задачи вроде создания комбинаций, обработки потоков данных и упрощения сложных вычислений.
👉 Python Ready | #шпора
👩💻 Проверка состояния батареи на Python
Этот код проверяет состояние батареи с помощью psutil
. Он получает процент заряда, показывает, подключено ли устройство к сети, и вычисляет оставшееся время работы.
В основе работы — psutil.sensors_battery
, который возвращает объект с данными о батарее.
Функция convertTime
преобразует секунды в формат часы:минуты:секунды.
И если устройство работает от сети, оставшееся время будет None
.
👉 Python Ready | #гайд
Хорошая практика для "хакеров" — Hacknet
Это увлекательный хакерский симулятор с интерфейсом компьютерного терминала. В игре вам предстоит взламывать сайты и получать доступ к системам, обходя защиту.
📌 Оставляю ссылочку: Steam 🙄