Python Hub - сборище Питонистов
1.71K subscribers
657 photos
1 video
37 files
278 links
Уголок счастья для любого питониста.

Сотрудничество или заказы: @leshunist

https://shcoder.dev - студия разработки ShcoderDevelopment

https://t.me/pythonhub_chat - чат
Download Telegram
🤔 Что такое хендлеры в телеграм ботах с точки зрения кода Python?

Хендлеры
- это функции, которые вызываются при получении определенного события от пользователя. В телеграм ботах, хендлеры используются для обработки входящих сообытий и выполнения определенных действий в ответ на эти события (отправка сообщения, взаимодействие с сообщением и т.д.).

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

👉 Как работают хендлеры?

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

Когда пользователь отправляет сообщение в бота, телеграм сервер отправляет это сообщение в вашу программу, в которой запущен ваш бот. Затем, используя созданные хендлеры, ваша программа обрабатывает это сообщение и выполняет определенные действия в ответ на это сообщение.
👍5
🔔Разработчикам ботов в телеге приготовиться!

📹 Посмотрели, что нового в aiogram 3.x 📹
🔥 Если что-то важное упустил, то напишите сюда или в комментарии! 🔥

Если зайдет, то сделаю более детально все на примерах.
Возможно, сравню конкретно с примерами версии 2.x

не забудь поддержать видео 🫶

https://www.youtube.com/watch?v=ysjCCLbXEyw
👍3
🎯 Подсказки типов в Python


Аннотации типов
- это способ указать ожидаемый тип переменной в определении функции или метода. Для этого используется синтаксис с двоеточием и указанием типа после имени переменной. Например:

def add_numbers(x: int, y: int) -> int:
return x + y


Здесь мы указываем, что функция add_numbers ожидает два целочисленных аргумента и возвращает целое число. Хотя аннотации типов не оказывают никакого влияния на выполнение программы, они могут помочь IDE и другим разработчикам понимать, какие данные ожидает функция.
👍2
Python Hub - сборище Питонистов
Photo
Разбор 👨‍💻

a = 4
b = 5

Перебор цикла for выдаст нам одно число —> 4 (пробегаемся с 4 до 5). Это число будет занесено в список lst в формате строки.
Дальше соединяем все элементы списка join'ом слитно —> из списка ['4'] получим строку '4', а после приведем ее к типу int —> 4. Занесем это с в переменную c

Далее проверим наличие переменной c (числа 4) в кортеже (a, b) —> (4, 5)
Да, такой элемент есть. Выведется True. Ну а False выводится независимо от условия if. Он у нас снаружи.

Ответ: True False
👍4
Сочетания клавиш в Pycharm😎
👍4
Сочетания клавиш в VSCode 😎
👍5
Python Hub - сборище Питонистов
Photo
Разбор 👨‍💻

У нас есть задача с вложенными циклами. Нужно быть внимательным.
Первый цикл прокрутится 2 раза
Второй - один раз —> его можем не учитывать
Третий - 1 раз, переменная i будет принимать значение 4 и добавлять его в список a.
Первый цикл прокрутит цикл №3 Два раза. Соответственно, действие повторится.

Мы два раза добавим число 4 в список и получим ответ [4, 4] в списке.
👍3
🧐 Зачем нужны тестироващики, если программист может сам тестировать код?


👉 Во-первых
, даже самый опытный программист может упустить из виду какую-то ошибку, которую мог бы заметить тестировщик. Тестирование требует особого внимания к деталям и тщательного анализа каждой функции. Программист, который работает над определенным модулем, может пропустить ошибку в другом модуле, с которым он не работал. Тестировщик же, не замыкаясь на конкретном модуле, может охватить все приложение в целом и выявить ошибки, которые программист не заметил.

👉 Во-вторых, тестирование требует определенных знаний и опыта. Тестировщик специализируется именно на тестировании, что позволяет ему обладать необходимыми знаниями и навыками для проведения тестирования. Он знает, какие методики тестирования использовать, какие инструменты применять и как правильно оформлять отчеты о тестировании. Это позволяет ему не только эффективнее тестировать приложение, но и существенно экономить время на этом этапе разработки.

👉 В-третьих, тестировщик может принести свежий взгляд на приложение. Программист, который работает над кодом, может привыкнуть к определенным проблемам или ошибкам и не видеть в них проблемы. Тестировщик же, который впервые сталкивается с приложением, может обнаружить ошибки, которые программист уже не замечает.
👍5
english_tutor.zip
609.6 KB
А вот и архив с файлами, пользуйтесь.
Напоминаю, что это что-то типа MVP, и архитектура тут не самая лучшая.
👍4
Python Hub - сборище Питонистов
Photo
Разбор 👨‍💻

У нас есть текст, состоящий из 3-ех слов.
Мы используем функцию map, куда передаем этот текст, преобразованный в список, где элементы - слова. (это мы получили при помощи split'a), а так же передаем туда функцию a.
Каждый элемент списка будет передаваться в функцию a —> к нему будет добавляться "!", а дальше все это занесется в отдельную переменную data.
Чтобы корректно вывести, мы переводим наш data в list и берем индекс 2.
это элемент Python!!
👍51