22,297
社区成员




a=input
while int(a)==0:
global b
b=int(a)%2
print(a)
报错显示‘b’未定义,求救!!!
按照你这个程序,不会报NameError这个错误。因为你根本没有用到b这个变量。如果将最后的print(a)改成print(b),那么你这个程序会不会报错,它取决于你的a输入的值。假如你输入a=0,那么这个程序会一直卡住while循环;如果输入a!=0,那么就会跳过while循环,程序运行print(b),那么变量b是没有定义的。
给你改好了,请采纳。
a = input("please input a number: ")
a = int(a)
while a == 0:
b = a % 2
a = int(input("please input a non-zero number: "))
print(a)