[英]Validating an input with a function in Python
我对Python真的很陌生,主要是在弄乱。 我正在尝试建立一个验证用户输入的函数(以我为例,检查用户是否写James或Peter。这可能是一个非常新手的问题,但是我只是想知道我的代码是否是一种好方法完成此功能,谢谢您的帮助。
namelist = "Peter", "James"
def nameinput():
global name
name = raw_input("Write a name. ")
def checkname(x):
while name not in namelist:
print "Try again"
nameinput()
else:
print "Good,", name
checkname(nameinput())
if name == "Peter":
print "This is a text for Peter"
elif name == "James":
print "This is a text for James"
没有; 这里没有理由使用全局变量。 将数据传递给需要它的函数。
def nameinput():
return raw_input("Write a name. ")
def checkname(name):
namelist = ["Peter", "James"]
while name not in namelist:
print "Try again"
name = nameinput()
else:
print "Good,", name
return name
name = checkname(nameinput())
通常不赞成使用全局变量(如果您不总是知道自己在做什么,它确实可以做一些愚蠢的事情),所以不要这么早就开始这样做。
您可以通过从nameinput返回名称来轻松避免这种情况。
另外,您已经有了名称列表。 最后执行以下操作:
if name in namelist:
print("This is a text for " + name)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.