首页 > 解决方案 > NameError:名称“firstPart”未定义

问题描述

我应该对代码进行哪些更改,以免获得NameError: name 'firstPart' is not defined.

burgers = ['- Hamburger', '- Cheeseburger', '- McChichen', '- Double Cheeseburger', '- Big Mac']
pizza = ['- Margareta', '- Pepperoni', '- Diablo']

def question():
    print()     #spacing for beauty

    print ('-----Our Menu-----')
    print ('[1] Burgers')
    print ('[2] Pizza')
    print ()     #spacing for beauty

    firstPart = int(input('Enter the number of the category of the food you wanna order: '))

question()

if firstPart == 1:
    print ('ok')

标签: pythonif-statement

解决方案


您可以返回该值并在函数范围之外重新使用它。

burgers = ['- Hamburger', '- Cheeseburger', '- McChichen', '- DoubleCheeseburger', '- Big Mac']
pizza = ['- Margareta', '- Pepperoni', '- Diablo']

def question():
    print()     #spacing for beauty

    print ('-----Our Menu-----')
    print ('[1] Burgers')
    print ('[2] Pizza')
    print ()     #spacing for beauty

    return int(input('Enter the number of the category of the food you wanna order: '))

firstPart = question()

if firstPart == 1:
    print ('ok')

发生此错误是因为该变量仅在函数范围内可用。firstPart 的范围仅限于函数。


推荐阅读