Задать вопрос
pohgen
@pohgen

Как передавать переменные из функций несколько раз?

У меня есть бот, который считает "Х", на основе 3 чисел введенных пользователем. Этих "Х" может быть большое кол-во, в зависимости от надобности пользователя. Соответственно и функция вызывается несколько раз подряд. Вот функция:
def proverka(message):
    check = message.text
    if check in ["1", "Stymulanta"]:
        maxx=max(a1,b1,c1)
        minn=min(a1,b1,c1)
        x1=(a1-minn)/(maxx-minn)
        x2=(b1-minn)/(maxx-minn)
        x3=(c1-minn)/(maxx-minn)
        msg = bot.send_message(message.chat.id, "x1="+str(x1)+"\n"+"x2="+str(x2)+"\n"+"x3="+str(x3)+"\n")
        ask(message)
    elif check in ["2", "Destymulanta"]:
        maxx=max(a1,b1,c1)
        minn=min(a1,b1,c1)
        x1=(maxx-a1)/(maxx-minn)
        x2=(maxx-b1)/(maxx-minn)
        x3=(maxx-c1)/(maxx-minn)
        msg = bot.send_message(message.chat.id, "x1="+str(x1)+"\n"+"x2="+str(x2)+"\n"+"x3="+str(x3)+"\n")
        ask(message)
    elif check in ["3", "Nominanta"]:
        msg = bot.send_message(message.chat.id, 'Введи идеальное значение Nominanty',reply_markup=markup)
        bot.register_next_step_handler(msg, nominanta)
    elif check == "/help":
        help(message)
    elif check == "/start":
        start(message)
    elif check == "/end":
        end(message)
    else:
        msg = bot.send_message(message.chat.id, 'Введи 1 или 2 или 3, я тебя не понял',reply_markup=markup)

Самые главные переменные тут x1, x2, x3. После того как функция отработала, пользователь может ещё раз вызвать эту функцию для просчета новых чисел, и так далее, пока не остановится.
Но мне надо, чтоб каждые найденные x1, x2, x3 записывались для дальнейших вычислений. То есть мне нужно после первого прохода функции - записать х1, х2, х3. Я не понимаю как это сделать. Была идея записывать в массив, а потом доставать 1, 4, 7, 10 для вычислений со всеми x1 (потому что дальше стоит задача объединить все найденные x1). Но как это реализовать я не пойму. Можете подсказать как сделать или хотя бы как это называется правильными словами, так как даже гугл меня не понимает.
  • Вопрос задан
  • 98 просмотров
Подписаться 1 Простой 7 комментариев
Пригласить эксперта
Ответы на вопрос 1
@pr0l
Через классы можно переменную использовать в другой функции.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы