Tre*_*pas 2 python if-statement
我一直在通过代码学院学习python.它让我创建一个if else语句来打印用户输入,但如果没有输入打印"空".我确实通过了教程,但是当有用户输入时,它会输出用户输入和"空".
这是我的代码:
print "Welcome to the English to Pig Latin translator!"
original = raw_input("what is your name?")
length = len("original")
if length > 0:
print original
else: length < 0
print "empty"
Run Code Online (Sandbox Code Playgroud)
请注意,else下的print不会缩进.我以为你必须缩进它,但当我这样做时给了我一个错误.
您的代码似乎有几个问题.首先我相信你应该改变你的任务length
:
length = len(original)
Run Code Online (Sandbox Code Playgroud)
这样,您就可以获得绑定到名称的字符串的正确长度original
.如果使用len("original")
,则将字符串"original"传递给len()
函数,它将只计算该字符串中的字符.无论您的程序用户输入什么,您的长度将始终为8,因为这是字符串中的字符数"original"
另请注意,该len()
函数永远不会返回负值.所以测试是否length < 0
有意义.你可能想测试它是否等于0.好像你试图使用一个elif
语句.
尝试:
print "Welcome to the English to Pig Latin translator!"
original = raw_input("what is your name?")
length = len(original)
if length > 0:
print original
elif length == 0:
print "empty"
Run Code Online (Sandbox Code Playgroud)
elif
语句允许您像if
语句一样测试条件.elif
是"否则如果"的缩写.
此外,正如@chepner在评论中指出的那样,根本不需要测试第二个条件.您可以轻松地使用:
else:
print "empty"
Run Code Online (Sandbox Code Playgroud)
该else
语法后面没有任何条件.如果其他条件评估为False,它会自动输入缩进的代码块.
归档时间: |
|
查看次数: |
3871 次 |
最近记录: |