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

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

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

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

По рекламе: @proglib_adv
РКН: https://gosuslugi.ru/snet/67b885cbd501cf3b2cdb5b36
Download Telegram
Обработка аудио- и видеофайлов с помощью ffmpeg

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

Тут есть некоторые команды для работы с ffmpeg:
https://kkroening.github.io/ffmpeg-python/
​​Python Unit Test Automation
Автор: Ashwin Pajankar

В настоящем руководстве вы познакомитесь с юнит-тестированием для проектов на языке программирования Python на примере таких библиотек, как doctest, unittest, nose, nose2 и pytest

#книгадня

https://t.me/progbook/3696
1
Несколько хороших страничек в Twitter. Join! :) Полезно для разработчика любого уровня.

Full Stack Python
Обучающие и информационные материалы.

Python Digest
Русскоязычный аккаунт.

Talk Python Podcast
Подкасты о Python на английском языке.

Python Hub
Полезные новости.

Python StackOverflow
Вопросы о Python со StackOverflow.

Raymond Hettinger
Советы для разработчиков.
👍1
Python and PyQt: Building a GUI Desktop Calculator

Из данной статьи вы узнаете как создать графический пользовательский интерфейс с Python и PyQt; дадите жизнь вашим приложениям, связав пользовательские события с конкретными действиями; cоздадите полнофункциональное приложение с графическим интерфейсом для решения реальных проблем

#статьядня

https://prglb.ru/zgz
Трюки с итераторами
Создание последовательности чисел (от нуля до десяти с пропусками).

>>> range(0,10,2)

[0, 2, 4, 6, 8]

Суммирование последовательности чисел (вычисление суммы от нуля до десяти с пропусками).

>>> l = range(0,10,2)
>>> sum(l)

20

Проверка, является ли какой-либо элемент в последовательности истинным (проверка, являются ли какие-либо элементы от нуля до десяти с пропусками четными).

>>> any(a % 2==0 for a in range(0,10,2))

True

Проверка правильности всех элементов в последовательности (проверка четности всех элементов от нуля до десяти с пропусками).

>>> all(a % 2==0 for a in range(0,10,2))

True

Совокупное суммирование последовательности чисел (вычисление накопленной суммы от нуля до десяти с пропусками).

>>> import numpy as np
>>> res = list(np.cumsum(range(0,10,2)))
>>> res

[ 0, 2, 6, 12, 20]
A Free Ebook on Greedy Algorithms, Divide & Conquer, and Dynamic Programming

В данной книге автор расскажет о таких парадигмах алгоритмического проектирования как Greedy, Divide & Conquer (разделяй и властвуй) и динамическое программирование. Что они из себя представляют и как стоит ими пользоваться.

#книгадня

https://prglb.ru/1cugb
Создание и Deploy Telegram Bot с помощью Python

#статьядня

https://prglb.ru/vu4z
Трендовые python-репозитории на github
Какие репозитории считаются наиболее впечатляющими? Нескольно репозиториев на сегодняшний день по версии github.

Streamlit
Cамый быстрый способ создания пользовательских инструментов ML.

DeepLearningExamples
Примеры глубокого обучения.

Python-100-Days
Python — 100 дней от новичка до мастера.
Почему нужно использовать "python -m pip"
Ведущая разработчица ядра и канадка Мариатта спросила в Твиттере о том, кто рассказал ей об идиоме использования python -m pip, а также попросила дать ссылку, объясняющую ее.
В бесплатной 16-битной приключенческой игре TwilioQuest есть специальная миссия по программированию на Python! 🤘😎 Вам стоит проверить это хотя бы для того, чтобы насладиться потрясающим ретро-искусством и музыкой.
Пишем простой граббер для Telegram чатов на Python
Рассказываем, как собрать данные участников и сообщения из чатов/каналов Telegram с помощью Python и библиотеки Telethon.
🤝💪😎
https://proglib.io/sh/xJNT6k9coB
Stepik.org запускает 6-недельную программу по Python для начинающих - https://prglb.ru/3odx9

Программа запускалась уже два раза и отзывы были отличные (можно почитать на лендинге). Учиться нужно будет в небольшой группе, вам будет помогать преподаватель, обучение проектное (нужно будет применять то, что узнаете, для создания реального проекта – Telegram-бота), преподаватель даёт фидбэк по заданиям в виде код-ревью.

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

Если вашу анкету одобрят, при оплате используйте наш промокод PYPROGLIB со скидкой в 1000р
Создание приложение Django и Gunicorn с помощью Docker
Хорошее руководство о том, как создать масштабируемое и переносимое приложение Django для создания голосования с Docker.
Зачем нужны операционные системы и как выбрать подходящую?
"Операционная система облегчает многие вычислительные задачи, которые мы считаем само собой разумеющимися. Например, операционная система позволяет записывать в файлы, общаться по сети и запускать несколько программ одновременно. В противном случае вам нужно будет управлять процессором, памятью, сетью, видеокартой и многими другими компонентами с помощью собственной низкоуровневой реализации" — ресурсы операционных систем для разработчиков Python.
Несколько полезных инструментов Python

Setuptools. Это стандартный способ создавать пакеты в Python. Он работает где угодно и хорошо справляется со своей задачей. Он используется для создания egg, zip или wheel файлов из исходников, определения метаданных для вашего проекта, совместной структурированной и стандартизированной работы над кодом.

Virtualenv является менеджером виртуальной среды. Такие изолированные среды представляют собой автономно установленный python с определенным набором предустановленных пакетов. Использование virtualenv означает, что вам не нужно устанавливать пакеты в python системы по умолчанию. Virtualenv выполняет разделение зависимостей, поддержку различных версий python одной системой, легкое перемещение зависимостей.

Pypi или Python Package Index — это большой репозиторий, в котором собраны все ваши самые любимые модули Python. Например, тот же самый pip берет билды пакетов именно оттуда. Полезен для публикации вашего кода.

Sphinx. Это инструмент для создания документации. Изначально он был создан для обработки документации Python, но стал инструментом общего пользования. Он является наиболее распространенным вариантом для проектов на Python. Используется для создания PDF-или HTML-документов с помощью языка разметки из reStructuredText источников.
Когда перейти на Python 3.8
Python 3.8 был выпущен в середине октября. Но не смотря на это, с новой версии могут возникать проблемы.

Проблемы, которые могут возникнуть с переходом на Python 3.8.
Отсутствующие пакеты. opencv-python package по состоянию на 28 октября был недоступен. Вы еще не можете использовать синтаксис. Новые версии Python часто имеют новый синтаксис, как в случае с Python 3.8. Однако другие инструменты также должны поддерживать новый синтаксис — автоформаторы, линтеры и т. Д. Пока они этого не сделают, вы не можете использовать новый синтаксис.

Почему вы должны переключиться.
Учитывая, что для обновления требуется время (дополнительное тестирование, некоторые настройки вашего кода), может возникнуть соблазн отложить переключение на неопределенное время. Проблема в том, что Python не поддерживается бесконечно, а библиотеки не поддерживают все версии Python бесконечно. Так что, если вы работаете на 5-летней версии Python, переключение становится более сложным делом. Вместо одного масштабного страшного обновления каждые несколько лет, гораздо безопаснее проводить непрерывный процесс небольших обновлений.

Когда вы должны перейти на новую основную версию Python?
Как минимум, вам нужно будет подождать, пока:
1. все ваши библиотеки явно поддерживают новую версию Python;
2. все инструменты, на которые вы полагаетесь, явно поддерживают новую версию Python.
Как использовать строки в Python 3 новичку

Одним из наиболее распространенных типов данных в любом языке программирования является string. Строка представляет собой последовательность символов, которые вы могли бы использовать для представления имен пользователей, сообщений в блогах и любое другое содержание текста в вашем коде. Вы можете создать строку и присвоить ее такой переменной.
my_name  =  "Джонатан Джостар"

В Python строки считаются неизменяемыми — после их создания они не могут быть изменены. Однако можно использовать различные методы для создания новых строк из существующих. Этот тип работы в программировании называется манипулированием.

Вот некоторые общие задачи, которые вы можете выполнять при использовании строк в вашем коде.
Объединение строк — очень распространенная задача. В Python 3 вы можете использовать "+"-оператор для этой цели. Вы можете использовать его несколько раз, чтобы объединить несколько строк.
first_name  =  "Джонатан" 
last_name = "Джостар"

full_name = first_name + "" + last_name
Другая распространенная задача со строками — вставка данных в определенное место в строке. В программировании мы называем эту строку интерполяцией. Вот пример создания отформатированной строки (обратите внимание, что буква f включается непосредственно перед первой двойной кавычкой при определении message-переменной). Если вы хотите вставить данные из вашей программы в строку, вы можете включить их между двумя фигурными скобками — { }.
first_name = "Джонатан"
last_name = "Джостар"
age = 24

message = f"Меня зовут {first_name} {last_name}, и мне {age} лет."
print(message)
Вы также захотите преобразовать строку во все заглавные буквы, используя upper-метод, к примеру, для отображения заголовков. А потом вы захотите перечислить наименования через запятую с помощью метода "split". Или заменить одно слово другим в предложении.
example_string = "am I stoked enough yet?"
example_string = example_string.upper()
print(example_string) # prints "AM I STOKED ENOUGH YET?"

example_string = "We're having kale for dinner! Yay kale!"
example_string = example_string.replace("kale", "tacos")
print(example_string) # prints "We're having tacos for dinner! Yay tacos!"

example_string = "Apples,Oranges,Pears"
groceries = example_string.split(',')

И в заключение, вам захочется конвертировать данные из одного типа в другой.
example_number = 42
converted = str(example_number)
message = "Ответ на главный вопрос жизни, вселенной и всего такого — " + converted

example_string = "2"
converted = int(example_string)
message = f"Два плюс два равно { converted + 2 }"
Укажите все правильный способ использования print.
Anonymous Poll
5%
print 3
5%
print "3"
86%
print (3)
4%
print() * 3
Правильный ответ — print (3).
Объяснение: print является функцией в Python 3