Нужна помощь) начинаю только разбираться в программировании. Сейчас вот занимаюсь небольшим созданием кода что то вроде электронного кошелька. Есть основная функция, внутри которой есть цикл, в котором вызываются другие функции. Так вот, в main функции есть переменные баланс int, и history list, они пустые, в них сохраняется история транзакций и введение средств или их снятие. Проблема в том, что история сохраняется, а баланс остается прежним нулевым. Я никак не могу понять как в эту переменную записать то, что вводится в другой функции. Заранее спасибо.
Python:
HELP_STRING = """
Кошелек:
добавить/отнять средства
посмотреть баланс
посмотреть последние 10 транзакций
выйти из программы по команде
распечатать список доступных команд (справка)
"""
HELP = "help"
EXIT = "exit"
BALANCE = "balance"
HISTORY = "history"
PUT = "put"
TAKE = "take"
def print_message(message):
print(message)
def print_help():
print_message(HELP_STRING)
def print_buy_message():
print_message("Thanks, see you")
def print_balance(money):
print_message("Your balance is " + str(money))
def print_history(history: list):
for record in history:
print_message(record)
def put_money(command, balance, history):
print_message("Thank you, money has arrived")
com, val, *_ = command.split()
balance = balance + int(val)
history.append(f"\t + {val}")
def take_money(command, history, balance: int):
print_message("Wish you were withdrawing money again")
com, val, *_ = command.split()
balance = balance - int(val)
history.append(f"\t - {val}")
def print_number():
print("Please enter the correct command")
def run_app():
balance = 0
history = []
while True:
command = input("Enter command, please:")
command = command.lower()
if command == HELP:
print_help()
elif command == EXIT:
print_buy_message()
break
elif command == BALANCE:
print_balance(money=balance)
elif command == HISTORY:
print_history(history)
elif command.startswith(PUT):
put_money(command, balance, history)
elif command.startswith(TAKE):
take_money(command, history, balance)
elif command.isnumeric():
print_number()
else:
print(f"Enter the appropriate command below")
print_help()
run_app()
Последнее редактирование: