Python Learning
35.4K subscribers
1.89K photos
8 videos
7 files
886 links
№ 4974297878

Обучающий канал по Python

Ссылка для друга - https://t.me/+I7jrAQKR5xAyYTAy

По всем вопросам @mascarov_valentin

Реклама на бирже - https://telega.in/c/Python_per_month
Download Telegram
Что выведет код сверху?
Anonymous Quiz
32%
6
32%
4
9%
2
27%
Error
Продолжаем работать с видео в Python

В этот раз мы познакомимся с еще двумя методами пакета moviepy.

Метод concatenate_videoclips объединяет несколько видео в один видеофайл.

Метод volumex позволяет нам изменить громкость в видеоролике. В нашем примере мы уменьшили громкость звука в 4 раза.
Форматируемые шаблоны строк

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

Такой способ появился ещё в Python 2.4, как замена %-форматированию, но популярным так и не стал. Поддерживает передачу значений по имени и использует $-синтаксис как в PHP.
Что выведет код сверху?
Anonymous Quiz
23%
-1
16%
4
21%
9
40%
Error
Узнаём кодировку текста

Наверное, у всех были ситуации, когда вы открыли файл или получили ответ от сервера, а внутри оказывается набор странных символов в непонятной кодировке.

Пакет chardet как раз был создан для работы с кодировками. Его метод detect выдает предполагаемую кодировку с точностью от 0 до 1.

В примере на картинке мы сделали запрос к серверу, получили ответ, взяли его содержимое и проверили кодировку через метод detect.
Что выведет код сверху?
Anonymous Quiz
9%
[1, 2] [1, 2, 2] [1, 2, 2, 2]
37%
[1, 2] [1, 2, 2]
26%
[1, 2]
28%
Error
Оператор continue

Оператор continue в Python используется для перевода управления программой в начало цикла. Он пропускает оставшиеся строки кода внутри цикла и запускает следующую итерацию.

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

Обратите внимание на вывод приведенного выше кода, значение 2 пропущено, потому что мы предоставили условие if с помощью оператора continue в цикле for. Когда он соответствует заданному условию, тогда управление передается в начало цикла for, и оно пропускает значение 2 из кода.
Создание GIF анимации из кадров в Python

У нас есть 10 кадров с бегущим Гомером Симпсоном. Мы будем использовать их для создания одной целой гифки.

Получившуюся гифку вы можете найти ниже, а подробное руководство по созданию GIF Гомера Симпсона из его изображений здесь.

P.S. Реакции к постам включены.
Эффективный трюк, чтобы узнать, является ли число степенью двойки

Обычный метод деления имеет сложность O(logN), но эту задачу можно решить со сложностью O(v), где v — количество цифр числа в двоичной форме.

Подробнее ознакомиться с тем как работает данный трюк можно здесь.
Что выведет код сверху?
Anonymous Quiz
10%
0
19%
1
32%
2
38%
3
Передача функции в другую функцию

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

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

Инструкция по созданию бота:
1) Заходим в бота @BotFather
2) запускаем его(/start)
3) выбираем команду /newbot
4) даем имя боту
5) после этого придумываем ему юзернейм
6) и наконец-таки получаем токен для нашего бота, который вставляем в свой код.

Теперь заходим в среду написания кода, вставляем наш код с картинки(для особо ленивых код будет в комментариях), вставляем свой токен и запускаем программу, после чего заходим в телеграм, находим в поиске вашего бота и запускаем его.

Перед запуском программы необходимо установить пакет telebot(pip install telebot).

Наш с вами бот будет работать в роли попугая, так как будет повторять любую вашу фразу.