Библиотека питониста | 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
Введение в 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
Лямбда-выражения в Python не могут делать много вещей, которые могут делать обычные функции. У вас может быть только одно выражение как лямбда-тело, вы не можете использовать операторы (a = b, yield, await и т. Д.), лямбда-выражения не могут иметь подсказки типа или объявляться как асинхронные.

#codeexample

Однако, если вам действительно нужно превратить лямбда-выражения в асинхронную функцию, вы можете использовать декоратор asyncio.coroutine. Он был полезен до Python 3.4, пока не было введено ключевое слово async, но в современном Python не имеет большого применения.

In : f = asyncio.coroutine(lambda x: x ** 2)
In : asyncio.get_event_loop().run_until_complete(f(12))
Out: 144
​​Если решили изучать Django и не знаете с чего начать, то вам в помощь официальная документация!

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

https://prglb.ru/5usit
Погружаемся в Python!
Преподаватель курса: Алексей Александрович Кладов
Осень 2018

#youtubeдня

https://prglb.ru/3j6uy
​​Все еще считаете Python языком, который под силу лишь "технарям"? В SkillFactory стартует онлайн-курс "Python для анализа данных" где вы научитесь использовать Python для анализа, быстрой обработки больших массивов данных, проектирования системы сквозной аналитики, построения автоматически обновляемых отчетов.
Закажите план развития просто сейчас → https://goo.gl/5L8hkE

А тех, кто хотет начать карьеру разработчика, ребята из SkillFactory приглашают на онлайн-курс “Python для web-разработчиков” → https://goo.gl/yAeNZK где вы получите практические знания и навыки работы на Python. Контента программы хватит для решения большинства задач базового и продвинутого уровня. Вы не просто изучите синтаксис Python, а научитесь использовать его для решения реальных бизнес-задач.
#codeexample

Способы проверки, если все элементы в списке равны:

lst = ['a', 'a', 'a']

len(set(lst)) == 1
# True

all(x == lst[0] for x in lst)
# True

lst.count(lst[0]) == len(lst)
# True

Решение len (set ()) идиоматично, но построение set менее эффективно с точки зрения памяти и скорости.
Одной из наиболее распространенных задач, которые вы можете выполнять с помощью Python, является чтение и запись файлов. Будь то запись в простой текстовый файл, чтение сложного журнала сервера или даже анализ необработанных байтовых данных, все эти ситуации требуют чтения или записи файла.

В этом уроке вы узнаете:
- что составляет файл и почему это важно в Python,
- основы чтения и записи файлов в Python,
- некоторые базовые сценарии чтения и записи файлов.

#статьядня

https://prglb.ru/427fp
​​Python Projects for Kids
Автор: Jessica Ingrassellino

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

В книге рассматриваются следующие темы:
✔️ переменные и функции;
✔️ создаем калькулятор;
✔️ циклы и ветвления;
✔️ создаем игру "тенис" и многое другое.

#книгадня

Скачать книгу:
https://t.me/progbook/2391
​​ Как использовать фабричный метод при написании кода на Python
Часто сталкиваетесь с условными конструкциями, с которыми трудно работать? Рассказываем про такой шаблон проектирования, как фабричный метод.

#статьядня

https://prglb.ru/2c3pg
​​The Python 3 Standard Library by Example
Автор: Doug Hellmann

Данное руководство охватывает наиболее популярные пакеты из стандартной библиотеки. Также автор постарался показать, как работающие решения на Python 3.x можно перенести на Python 2.x.

#книгадня

Скачать книгу:
https://prglb.ru/5gs39