Библиотека Python разработчика | Книги по питону
19.2K subscribers
1.06K photos
391 videos
82 files
1K links
Полезные материалы для питониста по Фреймворкам Django, Flask, FastAPI, Pyramid, Tornado и др.

По всем вопросам @evgenycarter

РКН clck.ru/3Ko7Hq
Download Telegram
Туториал: создание простой GAN на Python с библиотекой Keras

В этом туториале я расскажу о генеративно-состязательных нейронных сетях (GAN) не прибегая к математическим деталям модели. Далее будет показано, как написать собственную простую GAN на Python с Keras, которая сможет генерировать знаки.

Подробнее
👍4
Валидация email-адресов

Для проверки корректности email-адреса а также действительности его существования существует неплохой модуль validate_email.

Модуль предоставляет одну основную одноименную функцию, предназначенную для валидации адреса, с помощью уже написанных регулярных выражений. Также в функции реализована проверка mx-записи у сервера и существования переданного адреса, за это отвечают необязательные параметры-флаги функции verify и check_mx.

Для обращения validate_email к DNS записям необходимо предварительно установить модуль py3dns.
👍5
3 февраля мы подведем итоги конкурса Up Great ПРО//ЧТЕНИЕ

Несколько команд показали внушительные результаты, но достаточно ли этого для получения беспрецедентной в России призовой премии — узнаете 3 февраля. Сразу скажем, что будет вручен призовой фонд по специальным номинациям конкурса в размере 32 млн руб.

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

Если разработка участников справилась с задачей на уровне опытного учителя, то ее авторы получат приз до 100 млн руб. по каждому языку. Еще мы объявим победителей в специальных номинациях «Структура» и «Логика». На призовой фонд номинаций претендуют авторы решений, позволяющих выявить логические ошибки в тексте, а также определить смысловые блоки в сочинениях.

Подробнее
👍7
Работаем с USB

PyUSB — это библиотека, которая обеспечивает легкий доступ к USB. Имеет поддержку изохронной передачи, если её поддерживает бэкенд.

Основные методы для работы с USB, такие как find(), show_devices() и т. д, хранятся в usb.core.

Пакет usb.util содержит вспомогательные функции.

Функция find() используется для поиска устройств, подключенных к системе.

Также есть реализация внешнего и внутреннего интерфейса, для изоляции API от деталей реализации системы. Связующим звеном между двумя слоями является интерфейс IBackend.

PyUSB поставляется со встроенными бэкэндами для libusb 1.0, libusb 0.1 и OpenUSB.
👍15
Нейронная сеть с нуля

Нейронные сети все больше доминируют в области машинного обучения / искусственного интеллекта: самые сложные модели для компьютерного зрения (например, CLIP), обработки естественного языка (например, GPT-3), перевода (например, Google Translate) и многое другое основано на нейронных сетях. Когда эти искусственные нейронные сети достигают некоторого произвольного порога количества нейронов, мы называем это глубоким обучением.
Подробнее
👍9
FaceNet — пример простой системы распознавания лиц с открытым кодом Github

Apple использует Face ID, OnePlus — технологию Face Unlock. Baidu использует распознавание лица вместо ID-карт для обеспечения доступа в офис, а при повторном пересечении границы в ОАЭ вам нужно только посмотреть в камеру.

В статье разбираемся, как сделать простейшую сеть распознавания лиц самостоятельно с помощью FaceNet.


Подробнее
👍10
Генерация шумов Перлина

Шум перлина — это математический алгоритм по генерированию процедурной текстуры (градиентного шума) псевдо-случайным методом.

Для нас он может пригодится в разных ситуациях: от симуляции временных рядов разных показателей до генерации процедурного мира как в Minecraft.

Для Python уже существует библиотека-реализация этого алгоритма, называется она perlin-noise.

pip install perlin-noise

Сначала мы создаем обьект генератора шумов, и задаем ему количество октав и seed для встроенного рандомизатора:
noise = PerlinNoise(octaves=10, seed=1)

Обьявляем размер желаемой 2d матрицы:
xpix, ypix = 100, 100

И используя списочное включение, генерируем 2d матрицу, где интенсивность значения от координат задает наш обьект генератора noise:
pic = [[noise([i/xpix, j/ypix]) for j in range(xpix)] for i in range(ypix)]
👍5🔥1
7 фишек Python максимально улучшающие твой код

Хочешь писать более лаконичный и читаемый код а также умещать как можно больше смысла в одно выражение? Считаешь, что лучше один раз прочитать об уловках Python, чем провести остаток своих дней за чтением ненужной документации?
Подробнее
👍9
Топ 5 асинхронных веб-фреймворков на Python

Асинхронность уже не является просто модным словечком в сообществе Python. После выпуска библиотеки asyncio в версии 3.5, разработчики Python признали влияние Node.js в сфере веб-разработки и ввели в язык два новых ключевых слова – async и await. Это был крайне важный момент, потому что разработчики максимально осторожно относятся к расширению основного синтаксиса, если только нет острой необходимости, что только указывает на то, насколько принципиально необходимыми считались асинхронные возможности.

Подробнее
👍4🔥1
Станьте веб-разработчиком на Python в онлайн-школе программирования Хекслет!

👉🏻За 10 месяцев вы освоите Python, HTML и CSS, фреймворк Django. Прокачаетесь в алгоритмах, архитектуре, познакомитесь с базой данных SQL и сопутствующими инструментами: командной строкой, Poetry, Git.

👉🏻Напишите 4 рабочих проекта на GitHub и получите возможность пройти собеседования и стажировки в авторитетных компаниях.

Заходите и пробуйте наш формат! Первые курсы профессии доступны бесплатно после регистрации.
👍3
Шаблоны Django: реализация настраиваемых тегов и фильтров

https://realpython.com/django-template-custom-tags-filters/
👍1
Конструктор класса

У классов практически во всех языках есть конструкторы — это такие специальные методы, которые вызываются автоматически и инициализируют экземпляр класса.

В Python конструкторы в классах имеют название __init__(), и их почти всегда переопределяют. Делается это для того, чтобы назначить свойства объекту и выполнить предварительные действия.
👎8👍4
Мега подборка каналов для программистов 🎯

https://t.me/progjob Вакансии для программистов

Системное администрирование 📌
https://t.me/tipsysdmin Типичный Сисадмин (Админский юмор, фото железа, было/стало)
https://t.me/sysadminof Книги для админов, полезные материалы
https://t.me/linux_sup Новости и информация из мира Linux
https://t.me/i_odmin Все для системного администратора
https://t.me/i_odmin_book Библиотека Системного Администратора
https://t.me/i_odmin_chat Чат системных администраторов
https://t.me/dev_ops_info Devops

Программирование, фронтенд, Биг дата, мобильная р-ка, книги 📌
https://t.me/game_devv GameDev: разработка игр
https://t.me/Angular_Vuejs Angular Vue js React
https://t.me/frontend_1 Подборки для frontend разработчиков
https://t.me/Frontend_now Все для фронтендеров
https://t.me/react_prog Все что связано с reactjs
https://t.me/bookflow Лекции, видеоуроки, доклады с IT конференций
https://t.me/developer_mobila Мобильная разработка
https://t.me/Welcome_Python Добро пожаловать в мир Python
https://t.me/BookPython Библиотека Python разработчика
https://t.me/programmist_of Книги по программированию
https://t.me/BookJava Библиотека Java разработчика
https://t.me/java_sup Программирование на Java
https://t.me/proglb Библиотека программиста
https://t.me/bfbook Книги для программистов
https://t.me/imobile_dev Все по мобильной разработке: iOS, Android
https://t.me/database_group Все про базы данных
https://t.me/cloud_comp Облачные сервисы, вычисления и безопасность
https://t.me/bigdata_world Data Science, Big Data, Machine Learning

IT новости 📌
https://t.me/htech_news Новости HighTech
https://t.me/all_itnews IT новости на английском
https://t.me/gmorning_news Последнии новости из мира науки
https://t.me/youtips_tricks Технологические советы и хитрости

Шутки программистов 📌
https://t.me/dev_jokes Daily Dev Jokes
https://t.me/itumor ITumor | программисты шутят

SMM, Seo, Wordpress 📌
https://t.me/allsocial_news SMM / Советы, Новости, Лайфхаки
https://t.me/seo_go Новости по SEO продвижению сайтов
https://t.me/news_wordpress Канал о самой популярной CMS

Защита, взлом, безопасность 📌
https://t.me/crypto_security_lab Материалы по информационной безопасности
https://t.me/thehaking Канал о кибербезопасности
https://t.me/Hackme_news Новости из мира хакинга

Книги, статьи для дизайнеров 📌
https://t.me/ux_web Статьи, книги для дизайнеров
https://t.me/goodw_design Статьи по Веб дизайну

Должен знать 📌
https://t.me/UchuEnglish Английский с нуля
https://t.me/Pomatematike Канал по математике

Арбитраж трафика 📌
https://t.me/partnerochkin CPA и арбитраж трафика

Крипта 📌
https://t.me/crypto_moneygo Канал о крипте, новости, инсайды
https://t.me/bitkoinoff Нгвости криптовалют

VR, робототехника 📌
https://t.me/AR_VR_vision Компьютерное зрение, виртуальная реальность
https://t.me/robotics_scince Канал о Робототехнике и автоматизации


https://t.me/network_arch Network architecture and Administration
https://t.me/easy_program Программирование для новичков
https://t.me/testin_new Тестирование
https://t.me/IoTprog Интернет вещей
https://t.me/generalprog General programming
https://t.me/Hware_news Цифровые тенденции
👍7
Forwarded from Python академия
3 трюка с itertools

Сегодня мы рассмотрим несколько функций из довольно полезного модуля, позволяющих эффективно работать с итерируемыми объектами. Начнём с очень простой функции – chain. Она позволяет "склеивать" несколько итерируемых элементов в один.

Далее, accumulate. Эта функция немного похожа на reduce, но вместо того, чтобы давать одно окончательное значение, она последовательно применяет функцию, заданную вторым аргументом (в данном случае min), к каждому последующему элементу по порядку: min(11), min(11, 3), min(11, 3, 9) и так далее.

А для того, чтобы создавать комбинации из элементов выбранного итерируемого объекта, вам понадобится функция combinations. Вторым аргументом можно задать длину этой самой комбинации. Подписывайтесь на канал 👉@pythonofff
👍2
Пишем игру Сапер на Python

Сегодня мы напишем одну из самых распространенных игр - сапер. Для графического интерфейса будем использовать библиотеку tkinter.

Подробнее
👍9🔥3
Forwarded from Python академия
Упаковка параметров с помощью urlencode

Новая неделя – новые знания. В это утро понедельника я подготовил для вас крайне практичный пост.

Довольно часто приходится работать с разнообразными API и совершать get-запросы с передачей множества параметров. Чаще всего составление запроса в коде выглядит примерно так:

url = 'https://example.com?item={}&size={}&color={}&amount={}'.format('t-shirt', 'M', 'white', 5)

Смотрится не слишком презентабельно, однако есть слегка более длинный, но значительно улучающий читаемость кода вариант – функция urlencode из из модуля urllib.

Подписывайтесь на канал 👉@pythonofff
👍11👎1
В чем разница между списком и кортежем?
Мне задавали этот вопрос буквально на каждом собеседовании по Python/data science. Выучите ответ как свои пять пальцев:

1️⃣ Список можно изменить после создания.
2️⃣ Кортеж нельзя изменить после создания.
3️⃣ Список упорядочен. Он представляет собой упорядоченные последовательности объектов, как правило, одного и того же типа. Например, все имена пользователей упорядочены по дате создания: [«Seth», «Ema», «Eli»].
4️⃣ У кортежа есть структура. В каждом индексе могут сосуществовать различные типы данных. Например, такая запись базы данных в памяти: (2, «Ema», «2020–04–16») # id, name, created_at.
👎15👍9
10 неизвестных подводных камней безопасности для Python.

https://blog.sonarsource.com/10-unknown-security-pitfalls-for-python
👍3
Пишем логическую игру пятнашки на Python

Сегодня мы напишем на Python свою версию популярной логической игры - пятнашки. Цель игры заключается в том чтобы перемещая блоки в рамке упорядочить их по номерам.

Подробнее
👍4