Как передать значение переменной mes из одной функции в другую?
def forwardmes2withdelay(message):
print(message.text)
if message.text == 'Главное меню':
button = types.ReplyKeyboardMarkup(resize_keyboard=True, row_width=1)
contacts = types.KeyboardButton('Контакты')
post = types.KeyboardButton('Разместить пост')
button.add(contacts, post)
bot.send_message(message.chat.id, 'Главное меню', parse_mode='')
bot.send_message(message.chat.id, 'Выберите действие', reply_markup=button)
else:
try:
mes = message.id
return mes
finally:
mesg = bot.send_message(message.chat.id,'Укажите желаемое вами время формата <i>ЧЧ:СС</i>', parse_mode='HTML')
bot.register_next_step_handler(mesg, forwardmestime)
def forwardmestime(message):
print(mes)
timeobj = datetime.strptime(message.text, '%H:%M').time()
if f'{currentdatetime.hour}:{currentdatetime.minute}' == f'{timeobj.hour}:{timeobj.minute}':
bot.copy_message(chat2, message.chat.id, mes)
else:
def tusk():
bot.copy_message(chat2, message.chat.id, mes)
return schedule.CancelJob
schedule.every().day.at(f'{timeobj}').do(tusk)
while True:
schedule.run_pending()
time.sleep(1)
Я хочу, чтобы значение mes из первой функции перешло к другой
Во-первых, вам нужно, чтобы ваши функции определения находились внутри класса.
Второй. вам нужно, чтобы ваши переменные были объявлены внутри этого класса.
Таким образом, вы можете изменить эту переменную в одной функции, а затем использовать ее в другой функции. Так же, как пример ниже.
Чтобы получить к нему доступ, вам нужно использовать «я».
class Person():
def __init__(self):
self._name = None
def changeNameToJames(self):
self._name = "James"
def nameIs(self):
print(self._name)
Все, что здесь написано, правильно, но OP также должен научиться передавать и возвращать значения. Обычно это лучше, чем изменять значение в одной функции и читать его в другой.
То, что вы называете
def()
, называется «функцией». Я предлагаю вам больше узнать о том, как функции работают в python. В частности, обратите внимание на то, как вы можете вызвать функцию, чтобы заставить ее выполнить какую-то работу, передать значения функции в качестве параметров и вернуть результат обратно. Это все фундаментальные концепции, которые рассматриваются в любом хорошем онлайн-руководстве по Python.