Python School
82.4K subscribers
2.4K photos
7 videos
570 links
Уроки по Python, которые упростят вам жизнь. Без идиотских туториалов.

Наши мемы для программистов: @conhum

Сотрудничество - @alivian

Канал сотрудничает с рекламным сервисом @Tgpodbor_official

РКН: clck.ru/3G6pBb
加入频道
Asyncio.Queue для обмена данными между асинхронными задачами

В этом примере мы используем asyncio.Queue для обмена данными между асинхронными задачами producer и consumer. producer производит данные и помещает их в очередь с помощью queue.put(), а consumer забирает данные из очереди с помощью queue.get() и обрабатывает их. Когда producer завершает работу, мы помещаем специальное значение None в очередь, чтобы consumer завершил свою работу.
Модуль asyncio.Lock для синхронизации доступа к общим ресурсам

В этом примере мы используем asyncio.Lock для синхронизации доступа к общим ресурсам, чтобы предотвратить конкурентный доступ к общей переменной из нескольких асинхронных задач. Обе задачи update_counter используют один и тот же объект lock для получения блокировки перед обновлением счетчика. Только одна задача может захватить блокировку и выполнять обновление, в то время как другая задача ожидает, пока блокировка не будет освобождена.
Функция range()

В python range() – одна из встроенных функций. Она используется с циклом for для выполнения блока кода определенное количество раз.
break

В
python break используется для преждевременного выхода из цикла for. Он предназначается для прерывания цикла при выполнении определенного условия. Допустим, у нас есть список чисел, и мы хотим проверить, присутствует ли число. Мы можем перебрать список чисел и, если число найдено, выйти из цикла, потому что нам не нужно продолжать перебирать оставшиеся элементы.
Continue

Оператор continue используется внутри цикла, чтобы пропустить выполнение тела цикла for для определенного условия. Допустим, у нас есть список чисел, и мы хотим вывести сумму положительных чисел. Мы можем использовать операторы continue, чтобы пропустить цикл для отрицательных чисел.
Else

Блок else выполняется только в том случае, если цикл не завершается оператором break. Предложим, у нас есть функция для вывода суммы чисел, когда все числа четные. Мы можем использовать оператор break, чтобы завершить цикл for, если присутствует нечетное число. Мы можем вывести сумму в части else, чтобы она выводилась, когда цикл выполняется нормально.
While

Python дал возможность создать цикл while внутри другого цикла while. Предположим, вам нужно напечатать такую последовательность. 1 1 2 1 2 3 1 2 3 4 1 2 3 4 5
Бесконечная проверка

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

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

Чтобы добавить комментарии в код, в Python используется знак #, последующие знаки будут считаться закомментированными.
Модуль aiomultiprocess

В этом примере мы используем модуль aiomultiprocess для асинхронного параллельного выполнения задач в отдельных процессах. Мы создаем очередь queue с помощью aiomultiprocess.create_queue, создаем пул процессов с помощью aiomultiprocess.Pool() и спавним задачи worker в пуле. Затем мы кладем элементы в очередь и завершаем задачи путем помещения специальных элементов None в очередь.
Хотите стать разработчиком, но не знаете, какой язык программирования выбрать? Вот несколько причин присмотреться к Python 👇🏻

✔️ Простой. Элементарный синтаксис легко понять и изучить
✔️ Запускается на разных платформах: MacOS, Linux, Windows, Android, iOS и других. Это удобно.
✔️ Имеет ускоренный цикл разработки. Ему не нужно время на сборку и компиляцию. Пишете строку кода — и видите результат.
✔️ Даёт гигантскую библиотеку готовых решений — от веб-разработки до искусственного интеллекта.
По данным hh.ru, зарплата новичка — 100 000 рублей, а на июль 2023 открыто 5 365 вакансий.

Освоить язык проще всего на онлайн-курсе Skillbox «Профессия Python-разработчик»: тут вам и удобный график, и личный куратор, и даже гарантия трудоустройства (подробные условия — на сайте)!

Переходите по ссылке, чтобы узнать подробности и забронировать местечко: https://epic.st/Kkk_yK

Реклама. ЧОУ ДПО «Образовательные технологии «Скилбокс (Коробка навыков)», ИНН: 9704088880
String

Тип данных string представляет собой последовательность символов. Python поддерживает символы Unicode. Обычно строки представлены одинарными или двойными кавычками.
Комментарии

Чтобы добавить комментарии в код, в Python используется знак #, последующие знаки будут считаться закомментированными. Такой вид комментирования называется однострочным.
Модуль asyncio.Semaphore для ограничения количества одновременно выполняющихся асинхронных задач

В этом примере мы используем asyncio.Semaphore для ограничения количества одновременно выполняющихся асинхронных задач. Мы создаем семафор с лимитом 2 с помощью asyncio.Semaphore(2), и каждая задача worker перед выполнением блокирует семафор с помощью async with semaphore, а по завершении освобождает его.
Asyncio.run_coroutine_threadsafe для запуска корутины из другого потока

В этом примере мы используем asyncio.run_coroutine_threadsafe для запуска асинхронной корутины my_coroutine из другого потока. Мы создаем новый цикл событий с помощью asyncio.new_event_loop(), устанавливаем его текущим с помощью asyncio.set_event_loop(loop), и затем запускаем корутину с помощью asyncio.run_coroutine_threadsafe.
Многострочные комментарии

Метод комментирования нескольких строк, немного отличаются от обычного. Просто используйте 3 одинарные кавычки до и после части, которую вы хотите прокомментировать.
Функциональное программирование для более краткого и читаемого кода

Функции высшего порядка, анонимные функции (лямбда-функции), map, filter, reduce и другие инструменты функционального программирования могут сделать ваш код более компактным и понятным
Вы разработчик с опытом и знакомы с основами Python? На курсе Яндекс Практикума «Мидл Python-разработчик» вы сможете выйти на новый профессиональный уровень и использовать навыки, которые отличают мидла от джуна. Вы начнете думать о проекте, как о единой системе, разрабатывать полноценные веб-сервисы, организовывать инфраструктуру, а ещё:

• углубите знания технологий для бэкенд-разработки на Python;
• разовьёте инженерное мышление;
• сможете брать больше ответственности и решать задачи посложнее;
• разберётесь, как работает бэкенд, DevOps и другие смежные области;
• добавите 7 проектов в портфолио;
• почувствуете себя увереннее в процессах командной разработки.

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

Пройдите первый бесплатный урок
Модуль logging

Модуль logging позволяет эффективно вести логирование ваших приложений, что облегчает отладку и мониторинг. Вы можете настроить разные уровни логирования, сохранять логи в файлы или выводить их на консоль.