2017-01-16 56 views
-2

我目前正在测试我的Python编程知识作为学生并不能得到莱恩(),以一个简单的程序,它要求用户为该最大用户名工作12个字母长如何为字符串的输入长度添加验证?

Name = input("What Is Your Player Name\t") 
# Check That The User Has Got A Maximun Of 12 Characters 
if Name.len(0-13): 

else: 
    print("Your Name Can Only Contain 12 Characters") 
+0

没有'len()'字符串函数,有'__len__'应该用作'len(Name)'。如果第一个条件为True,那么也没有声明,所以你的代码将不起作用。 –

+2

我强烈建议您阅读文档;不清楚为什么你认为一个字符串有一个'len'方法,或者它为什么会返回一个布尔值,或者为什么'0-13'会被解释为一个有效范围(而不是'-13')。只是猜测不是学习语言的有效手段。 – jonrsharpe

回答

0

在使用len()其他答案的扩展,你可能要考虑使用一个while-loop要求用户再次输入名称,如果是喜欢超过12个字符,以便:

while(True): 
    name = input("What is your Player Name: ") 
    if len(name) > 12: 
    print("Your Player Name can only contain a maximum of 12 characters") 
    else: 
    break; 

print("\nYou entered the Player Name: %s" % name) 

试试吧here!

+0

个人而言,我建议不要提供完整的作业问题解决方案,尤其是没有解释为什么您的解决方案比他们提供的解决方案更好。这对提问者编程来说越新越重要,因为他们会根据相同的根误解问题提问。 – TemporalWolf

+0

我在这里指出的是我的答案的一些解释:我提供了一个指向'len()'的pydoc的链接,因为@OP应该学习如何在将来为自己的利益使用它。我将变量'Name'改为'name',因为在大多数情况下,python中的变量应该使用[snake_case](https://en.wikipedia.org/wiki/Snake_case)。我改变了打印语句以更准确地反映'if语句'实际正在测试的内容。最后,我添加了“while循环”,这通常是这类问题的自然延续。 – shash678

0

在Python将String传递给len函数以返回String的长度。

len(Name)