Как обновить переменную в Python - PullRequest
2 голосов
/ 27 октября 2019

как мне обновить баланс переменной constanta

def menu():
   balance = float(100.0)
   print (" 1.Balance 2.Draw ")
   ask = ('choose')

   if (ask == '1'):
       print ("Your Balance is {0}".format, balance)
       ask2 = input('do you want go back to menu ?')

       if (ask2 == 'y'):
          menu()
       else:
          sys.exit()

   elif (ask == '2'):
       draw = input("How Much : ")
       new_balance = (balance - draw)
       balance = new_balance
       print (balance)
       ask2 = input('do you want go back to menu ?')

       if (ask2 == 'y'):
          menu()
       else:
          sys.exit()

Так что, когда мой первый ввод 1, вывод 100.0, тогда я возвращаюсь в меню и выбираю второй вход2 с draw входом 50, поэтому new_balance равно 50. Затем я возвращаюсь к menu() и выбираю ввод 1, но переменная balance по-прежнему 100.0.

Как обновить переменную до balance = 0

1 Ответ

2 голосов
/ 27 октября 2019

Поскольку вы назначаете переменную 100.0 на balance всякий раз, когда вводите функцию menu. Для решения этой проблемы вы можете создать глобальную переменную баланса или использовать цикл while.

 def menu():
        balance = float(100.0)
        while true:
            print (" 1.Balance 2.Draw ")
            ask = input('choose')

            if (ask == '1'):
                print ("Your Balance is {0}".format, balance)
                ask2 = input("do you want go back to menu ?")

                if (ask2 == 'y'):
                    continue
                else:
                    break

            elif (ask == '2'):
                draw = input("How Much : ")
                balance = (balance - draw)
                print (balance)
                if(balance == 0):
                    print("Your balance is 0")
                    break
                ask2 = input("do you want go back to menu ?")

                if (ask2 == 'y'):
                    continue
                else:
                    break
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...