这个代码允许用户输入一个名字-但是如果他们输入数字,那么它将显示一个错误('No numbers please!')并提示他们再次输入姓名。此过程将在循环中继续,直到用户输入不带数字字符的字符串。在
但是,如果用户输入纯字母字符串-
if not any(char.isdigit() for char in name):
break
然后循环将被中断,输入的结果将变成一个列表,供以后在程序中使用。以下是错误的来源: 当循环中断时,我得到以下错误:
^{pr2}$如下所示,我已经将变量名定义为naming()定义中输入的结果。我做错什么了?谢谢你的帮助!在
def naming():
name = input ("please input your name: ")
while any(char.isdigit() for char in name):
print ("\nNo numbers please!\n")
naming()
if not any(char.isdigit() for char in name):
break
naming()
#making the name into a list
namelist = list(name.lower().strip(" "))
name
的作用域仅限于函数,这就是为什么不能在namelist
的全局范围内访问它。在解决此问题的一种方法是从函数返回值:
相关问题 更多 >
编程相关推荐