@Egor2119

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

Пишу своего первого telegram бота на aiogram, для уточнения погоды в любом городе по запросу на 1 день или 5 дней.
Вопрос такой, так как знаний мало , а в api к aiogram я так и не нашел нужного примера.

Суть такова, я одним запросом получаю город например Лондон.

Вторым запросом я запрашиваю какое кол-во дней вывести.

И вот тут вопрос как из первого запроса Лондон, положить в вызов второго запроса. Что бы если клиент выбрал Лондон, а потом погоду на 5 дней, функция все это дела вызвала?
Крик удалён модератором.
  • Вопрос задан
  • 464 просмотра
Пригласить эксперта
Ответы на вопрос 2
phaggi
@phaggi
лужу, паяю, ЭВМы починяю
В базу данных.
Ответ написан
RimMirK
@RimMirK
Вроде человек. Вроде учусь. Вроде пайтону
хранить в БД. Можно еще сделать ООП хранилище

class Storage:
    data: dict
    def __init__(self) -> None:
        self.data = {}
    def set(self, name:str, value:any) -> None:
        self.data[name] = value
    def get(self, name:str) -> any:
        return self.data[name]

# создаем экземпляр
storage = Storage()

# вводим данные
storage.set('int', 123)
storage.set('bool', False)
storage.set('str', 'striiiiiing')
storage.set('float', 0.4)
# так можно хранить объекты
storage1 = Storage()
storage1.set('test', True)
storage.set('obj', storage1)

# выводим данные
print('int', storage.get('int'))
print('float', storage.get('float'))
print('str', storage.get('str'))
teststorage = storage.get('obj')
print('obj', teststorage.get('test'))
print('bool', storage.get('bool'))


вывод:
int 123
float 0.4
str striiiiiing
obj True
bool False
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
CTRL+ Москва
от 250 000 до 320 000 ₽
CTRL+ Москва
от 200 000 до 300 000 ₽
CTRL+ Белград
от 250 000 до 320 000 ₽
22 нояб. 2024, в 00:55
500 руб./за проект
21 нояб. 2024, в 23:30
300000 руб./за проект
21 нояб. 2024, в 22:21
3000 руб./в час