def Change_char_stats():
Char_dmg = 50
Char_health = 100
Char_stat_choice= ''
print('Current Damage is:',Char_dmg,'and health is:',Char_health,'.')
Char_stat_choice=input('\nWhat character stat would you like to edit?')
if Char_stat_choice == '1':
print('Current damage is',Char_dmg,'.')
Char_dmg=int(input('Character damage to: '))
print('Character damage has been changed to',Char_dmg,'.')
Change_char_stats()
elif Char_stat_choice == '2':
print('Current damage is',Char_health,'.')
Char_health=int(input('Character health to: '))
print('Character health has been changed to',Char_health,'.')
Change_char_stats()
else:
print('Input invalid.')
Change_char_stats()
Change_char_stats()
Так что в основном я работаю над простой игрой для себя на Python, и у меня проблема с моими переменными, так как при запуске исходные переменные программы установлены до 50 дмг и 100 здоровья, но то, что я хочу сделать, это возможность запускать код, изменять переменные, а затем оставлять их такими. Хотя я понимаю, почему переменные не остаются в качестве новых значений, я понятия не имею, как их переписать, помощь будет высоко оценена.Как перезаписать переменную в python в функции
Спасибо.
Вы не видите закрывающей цитаты '' 'в этой строке' Char_stat_choice = input ('\ nЧто вы хотите изменить?) ' – Keatinge
Вы рекурсивно вызываете' Change_char_stats(), но вы не отслеживаете любых изменений, сделанных для «Char_health» и т. д. Возможно, лучше иметь символ, представленный как экземпляр класса, чтобы вы могли отслеживать изменения. – roganjosh
Вы должны использовать класс и использовать экземпляры там - но вам действительно лучше понять, как funcitons workm перед определением класса символов yur. Я предлагаю вам прочитать в учебнике Python по адресу https://docs.python.org/3/tutorial/index.html – jsbueno