Библиотека питониста | 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
Пишем скрипт для поиска книг на изображениях с помощью Python и OpenCV
Из данной статьи вы узнаете, как создать Python-скрипт с помощью OpenCV для подсчёта количества книг на изображении.

#статьядня

http://clc.am/qqWOpA
​​The New And Improved Flask Mega-Tutorial
Автор: Miguel Grinberg

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

#книгадня

Скачать книгу:
https://t.me/progbook/2253
​​Знаете разницу между аналитиком, использующим лишь Excel, и специалистом, "вооруженным" Python для анализа данных? Представьте разницу между велосипедом и сверхзвуковым самолётом.
Компании выбирают спецов, умеющих работать с Big Data при помощи современных инструментов для анализа.

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

Всему этому вы научитесь на курсе "Python для анализа данных".
Здесь вам не дадут “серебряную пулю”, но вы точно получите структурированные знания и, главное, уверенные навыки анализа различных данных с помощью Python, личную менторскую поддержку.
Запросите программу и план обучения → https://goo.gl/fXabkd
#codeexample

Функция functools.reduce является мощным инструментом, но она не может возвращать промежуточные результаты и поэтому не может использоваться с бесконечными генераторами.
Начиная с Python 3.3 вы можете использовать itertools.accumulate для выполнения следующих задач:

a = accumulate(sys.stdin, lambda a, b: int(a) * int(b))
next(a)
1 # this line is input

'1\n'
next(a)
2 # this line is input

next(a)
10 # this line is input
20
Разаработка на Python в Visual Studio Code
В этой статье вы узнаете о том, как:
- установить Visual Studio Code;
- найти и установить расширения, облегчающие разработку на Python;
- написать простое приложение на Python;
- узнаете, как запускать и отлаживать существующие программы Python в VS Code;
- подключать Visual Studio Code к Git и GitHub, чтобы поделиться своим кодом со всем миром.

#статьядня

http://clc.am/qkQNsg
Существуют десятки подкастов по науке о данных, охватывающих все - от машинного обучения и искусственного интеллекта до анализа больших данных. Это будет отличным ресурсом для тех, кто пытается найти полезные, информативные и интересные шоу.

#статьядня

http://clc.am/f4maPg
Если вы хотите выполнить несколько итераций одновременно, функция zip может быть хорошим выбором.

#codeexample

Она возвращает генератор, который выдает кортежи, содержащие один элемент из каждой исходной итерации:

In : eng = ['one', 'two', 'three']
In : ger = ['eins', 'zwei', 'drei']
In : for e, g in zip(eng, ger):
    ...:     print('{e} = {g}'.format(e=e, g=g))
    ...:
one = eins
two = zwei
three = drei

Обратите внимание, что zip принимает итераторы как отдельные аргументы, а не как список аргументов. Чтобы распаковать значения, вы можете использовать оператор *:

In : list(zip(*zip(eng, ger)))
Out: [('one', 'two', 'three'), ('eins', 'zwei', 'drei')]
​​Pythran: как заставить работать код Python со скоростью С++
Хотите писать программы на Python, работающие со скоростью кода, написанного на С++? Достаточно добавить аннотацию Pythran!

#статьядня

 https://prglb.ru/bhz7
Шаблон проектирования Фабрика и его реализация в Python
Шаблоны проектирования  стали популярной темой в конце 90-х годов после так называемой «Банды четырех»
Рассмотрим поподробнее шаблон проектирования Фабрика и его реализация в Python.

#статьядня

https://prglb.ru/4g2ss
Введение в Git и GitHub для разработчиков на Python
Самая известная система контроля версий в наши дни - Git, которая часто используется вместе с GitHub. Из этого туториала по вы узнаете все, что вам нужно знать об основах использования Git.

#полезностьдня

https://prglb.ru/2wxyk
Scrapy: создаём краулер парсер на Python с нуля
Краулинг - процедура анализа веб-страниц, сбор информации и последующий вывод в структурированной форме.
Сейчас набирает популярность Scrapy Framework, который написан на языке Python. Этот простой фреймворк предоставит вам мощный инструмент, с которым вы быстро сможете краулить множество ресурсов.

#видеодня

https://prglb.ru/2xwjo
#codeexample

Циклы for и while в Python поддерживают предложение else, которое выполняется только в том случае, если цикл завершается без выполнения оператора break

def contains(haystack, needle):

"""
"Бросайте" ValueError если needle
не находится в haystack.
"""
for item in haystack:
if item == needle:
break
else:

# Else - это "предложение завершения",
# которое выполняется только в том случае, если
# цикл завершился без оператора break
raise ValueError('Needle not found')

contains([23, 'needle', 0xbadc0ffee], 'needle')
None

contains([23, 42, 0xbadc0ffee], 'needle')
ValueError: "Needle not found"


# Если вы не фанат else "условия завершения" в циклах,
# то можете сделать что-то вроде этого:
def better_contains(haystack, needle):
for item in haystack:
if item == needle:
return
raise ValueError('Needle not found')


# Небольшое примечание:
if needle not in haystack:
raise ValueError('Needle not found')
​​Pro Python Best Practices
Автор: Kristian Rother

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

#книгадня

Скачать книгу:
https://t.me/progbook/1861
Визуализация данных c Python

Демонстрация основных методов Seaborn и Plotly
Пример визуального анализа данных
Подглядывание в n-мерное пространство с t-SNE
Домашнее задание
Обзор полезных ресурсов

#статьядня

https://prglb.ru/2nzbv
Чтобы создать метод класса, вы должны использовать декоратор @classmethod.
Этот метод может быть вызван непосредственно из класса, а не из его экземпляров, и принимает класс в качестве первого аргумента (обычно называемого cls, а не self).
Однако в модели данных Python есть два неявных метода класса: __new__ и __init_subclass__. Они работают точно так, как будто они украшены @classmethod.
__new__ создает новые экземпляры класса, __init_subclass__ - это ловушка, которая вызывается при создании производного класса.

#codeexample

class Foo:
def _new_(cls, *args, **kwargs):
print(cls)
return super()._new_(
cls, *args, **kwargs
)

Foo() # <class '_main_.Foo'>
ТОП-15 трюков в Python 3, делающих код понятнее и быстрее
Подборка трюков в Python третьей версии, которая поможет вам при меньших усилиях писать более качественный программный код.

#статьядня

https://prglb.ru/3il01
Заряжай свои классы с Python super()
Хотя Python не является чисто объектно-ориентированным языком, он достаточно гибкий и достаточно мощный, чтобы позволить вам создавать приложения с использованием объектно-ориентированной парадигмы. Один из способов - поддержка наследования, что он делает с помощью super().

#статьядня

https://prglb.ru/2vpnu
Python для микроконтроллеров
MicroPython - это компактная и эффективная реализация языка программирования Python 3, которая включает небольшое подмножество стандартной библиотеки Python и оптимизирована для работы на микроконтроллерах и в стесненных условиях.

#видеодня

Event: media.cc.de 2018
Speaker: Christine Spindler

https://prglb.ru/lcwo
Как запускать Python скрипты
Один из самых важных навыков, которые вам необходимо приобрести как разработчику на Python, - уметь запускать скрипты и код Python. Это единственный способ узнать, работает ли ваш код так, как вы запланировали. Это даже единственный способ узнать, работает ли ваш код вообще!
Этот пошаговый учебник проведет вас через серию способов запуска скриптов Python, в зависимости от вашей среды, платформы, потребностей и навыков.

#статьядня

https://prglb.ru/3056o