python的NameError: name 'xx‘ is not defined该怎么解决?
初学python 按着书上的代码打 想看看运行过程 代码如下stack=[]
def pushit():
stack:append(input(' Enter New String: ').strip())
def popit():
if len(stack)==0:
print('Cannot pop from an empty stack!')
else:
print ('Removes [','stack.pop()',']')
def viewstack():
print(stack)
CMDs={'u':pushit,'o':popit,'v':viewstack}
def showmenu():
pr='''
p(U)sh
p(O)p
(V)iew
(Q)uit
Enter choice:'''
while True:
while True:
try:
choice=input(pr).strip().lower()
except (EOFError,KeyboardInterrupt,IndexError):
choice='q'
print('\nYou picked:[%s]'%choice)
if choice not in 'uovq':
print('Invalid option,try again')
else:
break
if choice=='q':
break
CMDs()
if _name_=='_main_':
showmenu()但是总提示NameError: name 'pr' is not defined ,该怎么解决这个问题?
是哪一行报错? def showmenu():
pr = '''
p(U)sh
p(O)p
(V)iew
(Q)uit
Enter choice:'''
while True:
while True:
try:
choice=input(pr).strip().lower()
print(choice)
except (EOFError,KeyboardInterrupt,IndexError):
choice='q'
print('\nYou picked:[%s]'%choice)
if choice not in 'uovq':
print('Invalid option,try again')
else:
break
if choice=='q':
break
if __name__ == '__main__':
showmenu()
我这个是调试可以的了,你可以对比下你的
注意下划线是双下划线,while注意缩进
页:
[1]