Библиотека питониста | Python, Django, Flask
40.4K subscribers
2.8K photos
75 videos
51 files
4.38K links
Все самое полезное для питониста в одном канале.

Список наших каналов: https://t.me/proglibrary/9197

Курс по ML: https://cl

Для обратной связи: @proglibrary_feeedback_bot

По рекламе: @proglib_adv
РКН: https://gosuslugi.ru/snet/67b885cbd501cf3b2cdb5b36
Download Telegram
GIT: The Ultimate Guide for Beginners (2020)
Автор: Jameson Garner
Количество страниц: 57

Изучите ключевые концепции и базовый процесс работы с Git при помощи этой простой и популярной книги. Она создана для того, чтобы сократить академическую теорию до ключевых понятий и сосредоточить внимание на основных задачах для ускорения обучения. Читатели могут рассчитывать выучить минимум, необходимый для начала использования Git, менее чем за час.

Скачать книгу
Продлеваем на неделю конкурс #proglib_contest на самый интересный контент в телеграм-каналах Библиотеки программиста.

Почему? Мы выделили большой призовой фонд и хотим разыграть его среди активных читателей. Но пока мало кто успел поучаствовать. Смекалистые подписчики уже поняли: шансы выиграть очень высоки. За лучший пост в любом из телеграм-каналов Библиотеки программиста автор поста получит 20 000 ₽.

Каналов 14 штук, названия говорят сами за себя: @progbook, @proglibrary, @pyproglib, @frontendproglib, @javaproglib, @dsproglib, @phpproglib, @cppproglib, @mobileproglib, @goproglib, @csharpproglib, @devopsslib, @testerlib, @hackproglib. Таким образом, призовой фонд составляет 280 000 ₽.

Очень простые условия:
1) Найдите интересную и актуальную статью, вышедшую в 2020-21 годах, и напишите к ней анонс объемом до 700 знаков. Для @progbook можно написать рецензию на книгу.
2) Пришлите текст анонса и название целевого канала нашему боту @proglib_contest_bot.

Выиграет тот, чей пост в канале наберёт больше лайков/охватов/кликов по ссылкам. Юридическая информация: https://proglib.io/best-post-contest.
Дзен Python

Тим Петерс ещё в далёком 1999 году предложил PEP 20, который должен был содержать в себе 20 правил по написанию кода. Но в итоге их оказалось всего 19.

Последний пункт он предложил написать Гвидо Ван Россуму, однако он не написал ничего. В коммьюнити Python пришли к выводу, что разработчик языка хотел этим сказать, что никакие правила не являются абсолютными и везде есть исключения.

Посмотреть Дзен, или же философию Python, можно с помощью импорта модуля this, а вариант перевода Дзена на русском языке здесь.
Есть опыт и знания в IT, которыми Вы хотите поделиться ?

Станьте автором технических статей вместе с Proglib и получайте достойное вознаграждение!

Библиотека программиста приглашает к сотрудничеству внештатных авторов,
которые хотят поделиться знаниями, пропиарить свой авторский блог или просто заработать.
Мы предлагаем удаленную работу, гибкий график, возможность зарабатывать до 12к за статью и выплаты 2 раза в месяц.
Мы не ограничиваем в количестве статей.
Постоянным авторам предусмотрены премии за лояльность.

Интересующие направления для написания статей:

• Data Science, BigData и Machine Learning
• Блокчейн
• DevOps
• Информационная и Кибербезопасность
• Ruby on Rails
• C /C++/ C#
• Python
• Java
• Go разработка
• Разработка игр
• Android-разработка
• iOS-разработка
• Системная и бизнес аналитика
• Тестирование ПО
• Виртуальная реальность
• 1С
• Business Intelligence
• Интернет вещей
• Системы и сети
• IT Management

Оставьте заявку на https://proglib.io/w/b4cfab63 и мы свяжемся с вами!
Оформление кода

Мы уже писали, что в python есть своя философия. Именно отсюда берутся определенные правила и стандарты. В пайтон такое соглашение назвали PEP 8 (читается - пэп).

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

Официальная документация по PEP 8. Основные моменты:

Используйте пробелы, разрешается использование табов, но смешивание запрещено. Отступ соответствует 4 пробелам. Хорошие редакторы кода автоматически заменяют табы на пробелы.

Вокруг операторов +, -, =, *, /, ** должны быть пробелы.

Строка не должна превышать 101 символа

Импорты можно делать только по одному на строку! При этом из одного модуля можно доставать несколько нужных объектов. Порядок тоже важен:

- стандартные библиотеки;
- сторонние;
- созданные вами
Регулярные выражения

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

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

Стоит обратить внимание, что не стоит перезагружать регулярки. Они достаточно прожорливы и в большинстве случаев мы сами придумываем дополнительные проблемы. К примеру для проверки мэйла достаточно данного выражения r'\S+@\S+\.\S+' (\S+ - все не пробельные символы от 1 и более).

Самая полная регулярка для решения данной задачи написана в 5558 символов, которые никто не разберет. Лучше все же использовать простой шаблон и дополнительно проверять попыткой отправить письмо.
🐍 Основы Python для менеджеров: как изучить язык программирования без особых хлопот?

Язык Python идеально подходит для автоматизации повседневных бизнес-задач. Если вы не собираетесь становиться профессиональным программистом, углубляться дебри не стоит: менеджерам своей работы хватает, потому им нужно быстро понять основы. Рассказываем как это сделать.

https://proglib.io/sh/3YLgfXEWSH
Мы тут с ребятами думаем запустить курс в виде зум и/или оффлайн-встреч, часть курса запишем с топовыми психологами, поэтому если вам интересно, ответьте на 3 вопроса в нашей форме (оринтировочно это займет 2-3 минуты)
https://forms.gle/nBJxwf9pFbYw3mNm9

В форме нет обязательных вопросов.
Стань частью международной команды инженеров Intel, которые разрабатывают технологии, меняющие мир.
Ты получишь опыт работы с большим количеством современных инструментов и технических решений.
Узнай больше о вакансии DevOps Engineer (Integration, Computer Vision) по ссылке: http://career.intel.com/tp/rj6-3PauJ-e_K
Black Hat Python (2021)
Авторы: Justin Seitz, Tim Arnold
Количество страниц: 216

Когда дело доходит до создания мощных и эффективных инструментов для этичных хакеров, большинство аналитиков безопасности выбирают Python. Во втором выпуске бестселлера Black Hat Python вы исследуете темную сторону возможностей Python: все, от написания сетевых снифферов, кражи учетных данных электронной почты и перебора каталогов до создания фаззеров мутаций, исследования виртуальных машин и создания скрытых троянов. Книга отлично подходит для поддержания безопасности систем.

Скачать книгу
Math Adventures with Python (2019)
Автор: Peter Farrell
Количество страниц: 304

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

Скачать книгу
Полезность модуля math

Сложно переоценить пользу модуля math, если имеешь дело с какими-либо математическими функциями. Модуль представляет собой обширный функционал для работы с числами.

Его стоит импортировать тогда, когда вам необходимо работать с математикой, но не требуется избыточность модуля numpy. Например, можно импортировать число pi, как в примере.

Модуль math обеспечивает доступ к некоторым популярным математическим функциям и константам, к тому же он является встроенным (не нужно делать установку через pip).
Вычисление выражений Python

Вы наверняка знакомы с eval, но знаете ли вы о literal_eval? Вряд ли. Для безопасного исполнения выражений, содержащих исключительно литералы, вы можете делать так, как показано на картинке выше.

Между прочим, данная фича находится в языке уже очень давно.
Обработка строки

Полезные функции для работы со строками. Python известен тем, что можно написать код в одну строчку использованием метода вместо перебора списком.

Перечислим наиболее полезные методы:

capitalize() - первая буква большая, остальные маленькие
strip() - удаление пробелов в начале и конце
center(int, chr='') - отцентрирует текст, int - нужное кол-во символов в строке, а chr - символ для добавления в начало и конец
swapcase() - заглавные буквы в прописные, маленькие в большие
lower() - преобразует к нижнему регистру
upper() - преобразует к верхнему регистру

При написании нейронок и ботов обязательно приводите все к нижнему регистру с помощью lower(). При написании ботов часто использую center(), для красивого вывода.
Потоковый ввод

Вы можете обрабатывать ввод от пользователя потоком. В таком случае для завершения надо воспользоваться специальной "командой" на Windows — Ctrl + D. Запустить потоковый ввод можно через библиотеку sys и метод stdin.

Если требуется получить и тут же обработать строку, то так и пишем: sys.stdin

Если надо в начале прочитать весь потоковый ввод, а затем обработать, то sys.stdin.readlines()

На картинке представлено 2 варианта.

#proglib_contest
Подходит к концу эпический конкурс на самый интересный контент в телеграм-каналах Библиотеки программиста. Посты собирают всё больше откликов — спасибо за ваши старания!

У всех, кто хотел поучаствовать, остался последний шанс побороться за 20 000 ₽ в каждом из каналов: @progbook, @proglibrary, @pyproglib, @frontendproglib, @javaproglib, @dsproglib, @phpproglib, @cppproglib, @mobileproglib, @goproglib, @csharpproglib, @devopsslib, @testerlib, @hackproglib. Общий призовой фонд 280 000 ₽.

До полуночи примем последние посты — в некоторых каналах шансы на победу всё ещё высокие. Лайфхак: эти каналы нетрудно вычислить по хэштегу #proglib_contest 😉.

Напоминаем, как участвовать: пишем анонс до 700 знаков к любой актуальной айтишной статье 2020-21 годов или рецензию книги для @progbook. Отправляем получившийся текст и название канала боту @proglib_contest_bot. Чей пост в канале наберёт больше откликов, тот и выиграл.

Через три дня подведем итоги и огласим список победителей. Юридическая информация: https://proglib.io/best-post-contest.
👍1