测试积点老人 发表于 2019-2-25 10:50:53

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 ,该怎么解决这个问题?

丛影 发表于 2019-2-25 15:12:26

是哪一行报错?

liulixian23 发表于 2019-2-26 01:05:34

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]
查看完整版本: python的NameError: name 'xx‘ is not defined该怎么解决?