Я котика передамажил. Может дело в тебе?
Подскажите если кто с питоном знаком. Сижу уже третьи сутки.
Код состоит из функций. Глобальные переменные запрещены. В функцию приходит строка которую надо сохранить и потом воспользоваться в другом месте кода. Может кто в курсе как это воплотить?
п.с. Это связано с написанием телеграмбота через библиотеку pytelegrambotAPI.
Код состоит из функций. Глобальные переменные запрещены. В функцию приходит строка которую надо сохранить и потом воспользоваться в другом месте кода. Может кто в курсе как это воплотить?
п.с. Это связано с написанием телеграмбота через библиотеку pytelegrambotAPI.
Синглтон насколько знаю нужен чтобы в нём хранились уникальные данные. Для того чтоб дёргать по одной переменной получится уж очень громоздкая система.
Ну или обьявите класс и передавайте его по цепочке функций
Ну или обьявите класс и передавайте его по цепочке функций
Это как?
Если через ретёрн пробовать вывести, сама функция которую подставляешь будет требовать заполнение скобок которые как бы заполнены переданным через метод библиотеки меседжем. Что туда надо подставлять я хз именно это не даёт использовать саму функцию для передачи переменной в ней.
Идея в том чтобы с каждым шагом в каждой функции сохранить переменную. Но вот дальше тупик т.к. ретёрн натыкается на требование вставлять в скобки параметр притом что в вызове аргумент уже есть.
@bot.message_handler(content_types=['text'])
def bs_start_message(message) -> None:
if message.text != 'ok':
bot.send_message(message.chat.id, 'Введите пожалуйста город2')
bot.register_next_step_handler(message, reg_city)
def reg_city(message):
print('отработала функция 1')
v = message.text
print('сработало', v)
bot.send_message(message.chat.id, 'Введите дату')
bot.register_next_step_handler(message, reg_data)
Другого способа не нашёл (до трясучки уже эта проблема довела, несколько дней подряд только над ней и сидел пытаясь через решения из функций обойти)