Я новичок в Python и пытаюсь сделать простую игру из нескольких глав. Я хочу, чтобы вы могли делать разные вещи в зависимости от главы, но всегда сможете, например, проверить свой инвентарь. Вот почему я попытался использовать вложенные функции.
Можно ли создать глобальную функцию, которая будет действовать по-разному в зависимости от того, в какой главе я нахожусь, при этом все еще имея определенные опции, доступные во всех главах, или, возможно, мне следует значительно реструктурировать свой код?
I получить следующий код ошибки:
> Traceback (most recent call last): File "test.py", line 21, in
> <module>
> chapter1() File "test.py", line 19, in chapter1
> standstill() File "test.py", line 4, in standstill
> localoptions() NameError: name 'localoptions' is not defined
Я понимаю, что глобальная функция не идентифицирует вложенную функцию. Есть ли способ указать эту вложенную функцию для глобальной функции?
def standstill():
print("What now?")
print("Press A to check inventory")
localoptions()
choice = input()
if choice == "A":
print("You have some stuff.")
else:
localanswers()
def chapter1():
def localoptions():
print("Press B to pick a flower.")
def localanswers():
if choice == "B":
print("What a nice flower!")
standstill()
chapter1()