Python Community
12.9K subscribers
1.25K photos
36 videos
15 files
736 links
Python Community RU - СНГ сообщество Python-разработчиков

Чат канала: @python_community_chat

Сотрудничество: @cyberJohnny и @Sergey_bzd

РКН реестр:
https://knd.gov.ru/license?id=67847dd98e552d6b54a511ed&registryType=bloggersPermission
Download Telegram
⚡️ Создаём веб интерфейс

Tornado — это асинхронная сетевая библиотека с открытым исходным кодом, позволяющая создавать сайты с сотней открытых соединений.

Установка: pip install tornado

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

Из минусов: проект работает только в одном потоке и не пользуется принципами WSGI, как множество других веб фреймворков.

#миниурок #tornado
⚡️ Задачка с собеседования | #Easy

Условие:

Вам нужно получить наибольшее число из цифр входящего числа.

Пример:

digits_order(1234) -> 4321
digits_order(151) -> 511
digits_order(0) -> 0

📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇

#Задачка_с_собеседования
⚡️ Ответ на предыдущую задачу
⚡️ Параметры доступа

global
говорит нам о том, что перечисленные переменные стоит воспринимать как глобальные. То есть, получить к ним доступ можно из каждой функции, из любого класса в файле.

nonlocal оповещает о работе с идентификатором более высшего уровня доступа. Также требует, чтобы переменная уже была определена.

Подробнее, как обычно, можно почитать в документации.

#теория
👍1
⚡️ Цепочка операторов

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

Работает это со всеми операторами сравнения (<, ==, >, ...), [not] is и [not] in. Цепь может состоять из любого количества операторов.

Стоит отметить, что a op1 b op2 c не создаёт никаких связей между a и b, поэтому можно писать так: x < y > z.

Подробнее

#теория
⚡️ Задачка с собеседования | #Easy

Условие:

Вам нужно найти строку с наивысшим балом. Бал каждого слова — сума позиций всех букв (a = 1, b = 2).

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

Пример:

highest('do you wanna coffee') -> 'you'
highest('abcd dbcai') -> 'dbcai'
highest('aa b') -> 'aa'
highest('d bb') -> 'd'

📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇

#Задачка_с_собеседования
⚡️ Ответ на предыдущую задачу
⚡️ Дзен Python

Тим Петерс
решил составить правила для написания хорошего кода и назвал его «Дзен Python». Прочитать их можно, выполнив import this.

Правил должно быть 20, но одного не хватает. Тим предложил заполнить пробел создателю Python, но это место до сих пор пустует.

Автор хотел таким образом сказать, что в любом правиле есть исключения.

P. S. Посмотрите код модуля и перечитайте правила :)

#теория
Что выведет код выше?
Anonymous Quiz
11%
[None]
17%
[[...]]
36%
[[]]
13%
[]
22%
Ошибку
⚡️ Исправляем неграмотных англичан

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

Установка: pip3 install -U git+https://github.com/PrithivirajDamodaran/Gramformer.git

В основном вам нужны только методы correct(text) и highlight(text) класса Gramformer(), используемые для исправления и генерации XML кода подсветки ошибок.

P.S. Он обучен только на предложениях, поэтому пока не подходит для абзацев, а уж тем более статей.

#миниурок #gramformer
⚡️ Пишем бота для gmail

smtplib
— модуль, позволяющий создавать соединения с SMTP сервером. Эта технология используется для управления почтой, отправки и получения сообщений.

Нам нужны сервера Google, поэтому заходим сюда и ищем их. После — заходим с использованием своего аккаунта Google.

Учтите, что вам нужно будет дать доступ роботу для управления вашим аккаунтом. Чтобы отправлять вложения, стоит также почитать про email.

Подробнее, как обычно, можно почитать в документации.

#миниурок #smtplib
⚡️ Задачка с собеседования | #Easy

Условие:

Вам нужно узнать, является ли число квадратом какого-то числа. На вход идёт целое число.

Пример:

is_square(4) -> True
is_square(2) -> False
is_square(-5) -> False

📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇

#Задачка_с_собеседования
⚡️ Ответ на предыдущую задачу