Что в результате выведет в консоль данный код?
Anonymous Quiz
8%
[0, 4]
30%
[5, 7, 3, 1]
15%
SyntaxError
36%
[False, True, True, True, False, True]
11%
[True, False, False, False, True, False]
🤯7👍3
Разработка Telegram ботов: Reply кнопки
Продолжаем серию постов по разработке Telegram ботов, по просьбам наших подписчиков, мы переходим на библиотеку
В этом посте мы разберём как создавать и обрабатывать reply кнопки. Их вы видите сразу под строкой ввода сообщения. Чтоб создать кнопки, надо вначале создать объект клавиатуры -
Для удобства работы в будущем, сделаем функцию
Чтоб добавить кнопку в клавиатуру, воспользуемся методом
При нажатии на reply кнопку, Telegram отправляет её текст как обычное сообщение, поэтому нажатия на неё обрабатываем в обработчике сообщений.
Как этот бот выглядит со стороны пользователя можно увидеть на экране телефона в обложке этого поста. В следующих постах, мы реализуем процесс жалобы, а пока можете писать в чате, что вы хотите видеть дальше.
Продолжаем серию постов по разработке Telegram ботов, по просьбам наших подписчиков, мы переходим на библиотеку
aiogram
. Прошлый пост был также переписан под aiogram
.В этом посте мы разберём как создавать и обрабатывать reply кнопки. Их вы видите сразу под строкой ввода сообщения. Чтоб создать кнопки, надо вначале создать объект клавиатуры -
types.ReplyKeyboardMarkup()
, она принимает на вход аргументы: resize_keyboard
- булевый тип, подгоняет высоту клавиатуры до минимума и one_time_keyboard
- булевый тип, скрывает клавиатуру после нажатия на её кнопку.Для удобства работы в будущем, сделаем функцию
send_main_keyboard()
которая будет принимать на вход текст сообщения и отправлять главную клавиатуру с нейЧтоб добавить кнопку в клавиатуру, воспользуемся методом
keyboard.add()
, передав в него текст кнопки. Кнопки можно размещать в один ряд, для этого нужно передать их текста, через запятую.При нажатии на reply кнопку, Telegram отправляет её текст как обычное сообщение, поэтому нажатия на неё обрабатываем в обработчике сообщений.
Как этот бот выглядит со стороны пользователя можно увидеть на экране телефона в обложке этого поста. В следующих постах, мы реализуем процесс жалобы, а пока можете писать в чате, что вы хотите видеть дальше.
👍12🔥2
Что в результате выведет в консоль данный код?
Anonymous Quiz
2%
NameError
18%
SyntaxError
71%
3
2%
None
7%
FormatError
🤯16👍4❤2
Тип данных - множества (set)
Множества в python - это структура данных, которые содержат неупорядоченные элементы. В отличие от строк элементы в множествах не индексируемые, а значит к ним нельзя обращаться по индексу и проводить операцию среза.
Также множества не содержат дубликаты элементов. Как показано на картинке, если создать множества с повторяющимися элементами, лишние автоматически удалится.
Множества задаются с помощью ключевого слова
Элементы в множествах находятся в произвольном порядке, если запустить код с примера ещё раз, элементы могут напечататься в другом порядке.
#теория #множества #set #типы_данных
Подробнее...
Множества в python - это структура данных, которые содержат неупорядоченные элементы. В отличие от строк элементы в множествах не индексируемые, а значит к ним нельзя обращаться по индексу и проводить операцию среза.
Также множества не содержат дубликаты элементов. Как показано на картинке, если создать множества с повторяющимися элементами, лишние автоматически удалится.
Множества задаются с помощью ключевого слова
set
или перечисления элементов в фигурных скобках. Добавить элемент в него можно с помощью метода add()
.Элементы в множествах находятся в произвольном порядке, если запустить код с примера ещё раз, элементы могут напечататься в другом порядке.
#теория #множества #set #типы_данных
Подробнее...
👍24🤯3
Что в результате выведет в консоль данный код?
Anonymous Quiz
41%
[1, 2, 3]
12%
TypeError
3%
[1, 2]
44%
[2, 3]
👍22🤯14❤1
Копирование объектов
В опросе выше ~ 55% ответило неправильно, теперь объясним почему. В этом посте мы рассмотрим определение глубокого и поверхностного копирования, а также их реализации на языке Python.
В первом примере мы копируем объект лишь поверхностно, при таком копировании дочерние элементы не копируются в новый объект, оно просто копирует ссылки на их адреса памяти. Следовательно, при изменении нового объекта, изменяется и старый.
Во втором примере с помощью функции
#теория #копирование
В опросе выше ~ 55% ответило неправильно, теперь объясним почему. В этом посте мы рассмотрим определение глубокого и поверхностного копирования, а также их реализации на языке Python.
В первом примере мы копируем объект лишь поверхностно, при таком копировании дочерние элементы не копируются в новый объект, оно просто копирует ссылки на их адреса памяти. Следовательно, при изменении нового объекта, изменяется и старый.
Во втором примере с помощью функции
copy
, мы делаем глубокое копирование, копируем сам объект и все его дочерние элементы в новые ячейки памяти, поэтому изменения на старом объекте не отражаются.#теория #копирование
👍26🤯6😁1
Что в результате выведет в консоль данный код?
Anonymous Quiz
12%
10
13%
1
25%
False
36%
True
14%
SyntaxError
👍13🤯12🔥1🎉1
Функция count
Метод
Также метод
#теория #функции #методы #списки #строки
Подробнее...
Метод
count
, принимая в качестве аргумента объект, возвращает количество вхождений этого объекта в список. В первом примере, мы получаем количество вхождений нулей и единиц в список.Также метод
count
позволяет получить количество вхождений подстроки в строку. Во втором примере мы получаем количество запятых в строке ‘Hello, world!’
. Если объект в списке/строке не присутствует, функция вернёт 0.#теория #функции #методы #списки #строки
Подробнее...
👍27🔥3🤯1
Что в результате выведет в консоль данный код?
Anonymous Quiz
29%
0 и 2
47%
4 и 2
6%
4 и 0
13%
SyntaxError
5%
FindError
🤯27❤12
Что выведет данный код?
Anonymous Quiz
38%
{1, 2, 3, 4}
38%
{1, 2, 3, 4, 3, 2, 1}
19%
[1, 2, 3, 4, 3, 2, 1]
6%
[1, 2, 3, 4]
🤯16🔥10❤3👍1
Списочные выражения
Списочные выражения в python - это краткие синтаксические конструкции, позволяющие создавать списки применяя функции к каждому элементу других итерируемых объектов.
В первом примере мы создаём список пройдясь по каждому элементу последовательности
В последнему примере мы проходимся по уже готовому, другому списку и дописываем приветствие к каждому имени
#теория #списки #списочные_выражения #циклы
Подробнее...
Списочные выражения в python - это краткие синтаксические конструкции, позволяющие создавать списки применяя функции к каждому элементу других итерируемых объектов.
В первом примере мы создаём список пройдясь по каждому элементу последовательности
range(10)
, т.е по числам от 0 до 9. Также можно дописать в выражении условия, в следующем примере мы также проходимся по числам от 0 до 9, но уже исключая нечетные числа.В последнему примере мы проходимся по уже готовому, другому списку и дописываем приветствие к каждому имени
#теория #списки #списочные_выражения #циклы
Подробнее...
🔥19👍6🤯5❤2
Что в результате выведет в консоль данный код?
Anonymous Quiz
31%
[0, 0, 1, 1]
7%
[0, 0, 0, 1, 1, 1]
36%
[0, 1, 0, 1]
6%
[0, 1, 0, 1, 0, 1]
10%
[0, 1, 2, 0, 1, 2]
11%
[0, 1, 2, 0, 1, 2, 0, 1, 2]
🤯30❤9🔥7
Цикл while
Цикл
В первом примере мы проходимся циклом, пока число меньше трёх и на каждом шаге увеличиваем его. В результате работы в консоль выводится три числа.
Прервать работу цикла можно с помощью ключевого слова
Также можно прервать не весь цикл, а только текущую операцию с помощью ключевого слова
#теория #циклы #while
Подробнее...
Цикл
while
используется для многократного повторения определенных операций, пока условие истинно. Соответственно если условие всегда истинно - цикл будет выполняться бесконечно (while True:
)В первом примере мы проходимся циклом, пока число меньше трёх и на каждом шаге увеличиваем его. В результате работы в консоль выводится три числа.
Прервать работу цикла можно с помощью ключевого слова
break
. Во втором примере показано, что когда цикл начинается второй раз, срабатывает break
и цикл заканчивается.Также можно прервать не весь цикл, а только текущую операцию с помощью ключевого слова
continue
. В третьем примере показано, что когда цикл начинает вторую итерацию, он сразу пропускает её и начинает третью.#теория #циклы #while
Подробнее...
👍30❤5🔥3🤯2