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

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

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

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

По рекламе: @proglib_adv
РКН: https://gosuslugi.ru/snet/67b885cbd501cf3b2cdb5b36
Download Telegram
Решайте кодинг-задачи и ищите работу анонимно на Арене → https://clck.ru/JTW6Z

создайте профиль — Арена, скорее всего, предзаполнит его открытыми данными из ваших соц.сетей

решайте кодинг задачи и показывайте свои навыки

составьте свой райдер, аки рок-звезда — компаниям придется ему соответствовать

компании откликаются, вы можете отклонять их

На Арене уже есть вакансии Ivideon, ATOL, Pladform и других. Сюда попадают только компании с адекватной рынку ЗП.
​​Хочешь бесплатно научиться программировать?

«Школа 21» - бесплатный образовательный проект Сбербанка, школа открыта в Москве и в декабре 2019 года открывает свои двери в Казани.
Для поступивших в школу в Казани из других городов будет предоставлено общежитие.

Получи junior или senior degree, без учителей, без лекций, без оценок.
“Школа 21” работает 24/7 - без графиков и расписания, ты сам определяешь, когда тебе учиться. Поступление не зависит от предыдущих знаний, опыта работы, умения программировать и наличия диплома. Поступить в нее может каждый достигший 18 летнего возраста.

Набор уже открыт и проходит в игровой форме.
Не теряй время, переходи на сайт Школы, выбери кампус, в котором ты хочешь учиться и подай заявку на обучение до 2 декабря:
https://prglb.ru/1530f
Когда вы пишете пользовательский __repr__ для какого-либо объекта, вы обычно хотите включить представление его атрибутов. Для этого вы должны выполнить форматирование вызова repr() для объектов, так как он вызывает str() по умолчанию.

#codeexample

Это делается с помощью !r :

class Pair:
def __init__(self, left, right):
self.left = left
self.right = right

def __repr__(self):
class_name = type(self).__name__
return f'{class_name}({self.left!r}, {self.right!r})'
Python Unit Testing With VS Code

VS Code может автоматически распознавать существующие тесты Python и запускать их. Разбираемся, как настроить его для запуска наборов тестов и отдельных тестов, а также как просмотреть результаты теста.

#видеодня

https://prglb.ru/31v92
Python Standard Library: The Hidden Gems
В данном видео мы увидим, как часто для задач, в которых вы использовали сторонние библиотеки или фреймворки, решение bultin в стандартной библиотеке уже доступно, и такое решение гарантированно будет поддерживаться и работать в течение многих лет благодаря надежности и стабильности стандартной библиотеки.

EVENT: EuroPython 2019 - Talk - 2019-07-12 - Boston
SPEAKER: Alessandro Molina

#видеодня

https://prglb.ru/3prrf
Начните с Django: создайте приложение для портфолио

К концу этого курса вы сможете:
Понять, что такое Django и почему это отличный веб-фреймворк
Понять архитектуру сайта Django и его сравнение с другими платформами.
Создать новый проект и приложение Django 2
Создать сайт личного портфолио с Django 2 и Python 3

#статьядня

https://prglb.ru/ydbb
Как заработать на аренде офиса, которого у вас нет

Наши друзья из Ключа недавно запустили что-то интересное. Если не слышали раньше, то Ключ — это сеть рабочих пространств, которая делает смарт-офисы, коворкинги и переговорные на разных площадках в Москве. Например, у Ключа есть филиалы на Трёхгорной мануфактуре и Арме. На подходе у них новая большая площадка у м. Нагатинская — Ключ Сириус Парк.

По этому случаю в компании запустили реферальную программу: те, кто предложит арендатора в Ключ, смогут получить вознаграждение 5% от месячной платы за аренду — а это до 250 000 ₽.

Как это работает
Есть две простые анкеты.
Первая — это регистрация в реферальной программе: https://bit.ly/2AL4fIo. После неё вам вышлют личный ID брокера.
Вторая анкета — это форма, где нужно оставить контакты ваших знакомых, кто ищет офис: https://bit.ly/2oLH521. Если сделка с ними будет успешной, то вам перечислят вознаграждение. Успешная сделка — это когда договор аренды заключен от 6 месяцев и выше.

Здесь подробнее про другие площадки Ключа: thekey.space/offices
Комментарии в Python: лучшие практики
Важно писать комментарии, которые читабельны и просты для понимания. Вы узнаете лучшие практики комментирования, которым вы можете следовать при написании кода для себя или для других. Вы увидите, как комментарии могут быть полезны для разбивки проблем на управляемые части, при отладке и для того, чтобы сделать ваш код более понятным для других разработчиков.

#видеодня

https://prglb.ru/20d8p
Упрощаем разработку: асинхронные функции Python

Хотите программировать на Python асинхронно? Испытываете проблемы с многопоточностью? Расскажем, как использовать асинхронные функции в Python.

#статьядня

https://prglb.ru/1apjz
Если вы хотите перебрать несколько итераций одновременно, вы можете использовать функцию zip (она не имеет ничего общего с форматом файла ZIP):

#codeexample

from datetime import timedelta

names = [
    'Eleven. Return and Revert',
    'Wilderness',
    'The Menagerie Inside',
    'Evaporate',
]

years = [
    2010,
    2013,
    2015,
    2018,
]

durations = [
    timedelta(minutes=57, seconds=38),
    timedelta(minutes=48, seconds=5),
    timedelta(minutes=46, seconds=34),
    timedelta(minutes=43, seconds=25),
]

print('Midas Fall LPs:')
for name, year, duration in zip(
    names, years, durations
):
    print(f'  * {name} ({year}) — {duration}')

Output:

Midas Fall LPs:
  * Eleven. Return and Revert (2010) — 0:57:38
  * Wilderness (2013) — 0:48:05
  * The Menagerie Inside (2015) — 0:46:34
  * Evaporate (2018) — 0:43:25
​​В SkillFactory стартует онлайн-марафон Python
для анализа данных
, который гарантирует получение знаний.

Как это работает?
1. Оплатите невозвратную часть обучения за участие — 2 900 руб.
2. Выполняйте задания в установленные сроки.
3. Оплачивайте курс частями, с возможностью вернуть деньги.
4. Завершите курс с оценкой не менее установленного количества баллов.
5. Верните деньги за свое обучение.

Особенности курса:
— Понятно и интересно: существующие курсы — слишком академичны. Мы объясним сложные термины понятным языком и заложим необходимый фундамент
— С упором на практику: на курсе вы решить реальные задачи в области анализа данных
— Поддержка ментора и одногруппников: с вами будет ментор, который разберет сложности и другие участники, с которыми можно решать задачи вместе.

Старт – 16 октября, забронируйте место уже сейчас: https://clc.to/wR1ijg
Интересные новые функции в Python 3.8

Из данной статьи вы узнаете:
-Как использовать выражение присваивания для упрощения некоторых конструкций кода
-Как применять positional-only аргументы в ваших собственных функциях
-Указание более точных подсказок типа
-Как использовать f-строки для более простой отладки

#статьядня

https://prglb.ru/1w9fd
Python Back-end Developer в GOSU.AI
от 1500-2200 EUR, повышение ЗП после переезда.
Full-time удаленно, дальнейшая релокация в Вильнюс (компания помогает в получением европейского ВНЖ).

➡️ Подробности: https://www.notion.so/gosu/Python-Back-end-Developer-6e9681e1e0244b8795a08d395b097d59
#codeexample

Если вы хотите создать словарь из известного набора ключей и некоторого фиксированного значения для всех из них, вы можете использовать словарные выражения:

>>> keys = ['a', 'b', 'c']
>>> {k: True for k in keys}
{'a': True, 'b': True, 'c': True}

Однако, у класса dict есть метод класса fromkeys, разработанный специально для этого случая:

>>> dict.fromkeys(keys, True)
{'a': True, 'b': True, 'c': True}

Вы можете добавлять символы Юникода в строковый литерал не только по его номеру, но и по его имени.

>>> '\N{EM DASH}'
'—'
>>> '\u2014'
'—'

Это также совместимо с f-strings:

>>> width = 800
>>> f'Width \N{EM DASH} {width}'
'Width — 800'
10 советов о том, как научить ребенка программировать на Python
10 педагогических советов и 3 книги для тех, кто хочет помочь ребенку научиться программировать на Python.

#статьядня

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

f-строки позволяют указать ширину для печатаемого значения, а также другие спецификаторы формата:

>>> x = 42
>>> f'{x:5}+{x:15f}'
' 42+ 42.000000'

Они также могут содержать оцененные выражения, которые могут быть полезны, когда ширина неизвестна заранее:

def print_table(matrix):
cols_width = [
max(len(str(row[col])) for row in matrix)
for col in range(len(matrix[0]))
]

for row in matrix:
for i, cell in enumerate(row):
print(
f'{cell:{cols_width[i]}} ',
end=''
)
print()

albums = [
['Eleven. Return and Revert', 2010],
['Wilderness', 2013],
['The Menagerie Inside', 2015],
['Evaporate', 2018],
]

print_table(albums)

На выходе:

Eleven. Return and Revert 2010
Wilderness 2013
The Menagerie Inside 2015
Evaporate 2018
Python sleep(): как добавить временные задержки в ваш код

Из данной статьи вы узнаете, как добавить вызовы Python sleep () с помощью:
time.sleep ()
Декораторов
Потоков
Async IO
GUI

#статьядня

https://prglb.ru/a9s3
Новые крутые Features в Python 3.8

Что принес Python 3.8?  Документация дает хороший обзор новых функций.  Тем не менее, эта статья более подробно расскажет о некоторых самых значительных изменениях и покажет, как вы можете использовать преимущества Python 3.8.

#статьядня

https://prglb.ru/1w9fd
Redis в Python — Полная документация на примерах

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

#статьядня

https://prglb.ru/4jgvy
Poco — UI автоматизация мобильных игр на основе Python в рамках AirTest IDE

Poco — фреймворк UI автоматизации игр использующий Python в рамках AirTest IDE с возможностью комбинирования функциональности с их же Image Recognition фреймворком (AirTest).

#статьядня

https://prglb.ru/1uywx