python帮助!If/else语句
我一直在代码学院学习python。它要求我创建一个if-else语句来打印用户输入,但如果没有输入,则打印“empty”。我确实通过了教程,但当有用户输入时,它会打印用户输入和“空” 这是我的密码:python帮助!If/else语句,python,if-statement,Python,If Statement,我一直在代码学院学习python。它要求我创建一个if-else语句来打印用户输入,但如果没有输入,则打印“empty”。我确实通过了教程,但当有用户输入时,它会打印用户输入和“空” 这是我的密码: print "Welcome to the English to Pig Latin translator!" original = raw_input("what is your name?") length = len("original") if length > 0: pr
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"
print“欢迎来到英语到拉丁语的翻译人员!”
原始=原始输入(“你叫什么名字?”)
长度=长度(“原始”)
如果长度>0:
打印原件
其他:长度<0
打印“空”
请注意,else下的打印没有缩进。我以为你必须缩进它,但当我这样做时,它给了我一个错误
else: length < 0
print "empty"
Python有明显的空白,缩进相同的内容在相同的范围内。在else后面有一条语句
else: length < 0
print "empty"
或者只是一个普通的
else:
print "empty"
它无论如何都不会超过零,你可以有一个条件为零,它会工作的
elif length == 0:
这可能是最好的方法,不需要检查其他情况
if length > 0:
print original
else:
print "empty"
还有一个旁注length=len(“原件”)
因为它是一个变量:),所以在original的周围不应该有引号。您将只获得字符串“original”,而不是变量中的实际内容
最终结果
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:
print "empty"
长度<0
是否打算作为注释?您需要注释字符#
else:#长度<0
打印“空”
无论如何,这是错误的,应该是
length您的代码似乎有一些问题。首先,我认为您应该将长度的赋值更改为:
length = len(original)
这样,就可以获得绑定到名称original
的字符串的正确长度。如果使用len(“original”)
,则将字符串“original”传递给len()
函数,它只计算该字符串中的字符数。无论您的程序的用户输入了什么,您的长度始终是8,因为这是字符串“original”
还要记住,len()
函数永远不会返回负值。所以测试长度<0
没有意义。您可能想测试它是否等于0。似乎您试图使用elif
语句
尝试:
elif
语句让您可以像if
语句一样测试条件elif
是“else if”的缩写
此外,正如@chepner在评论中指出的那样,根本没有必要测试第二个条件。您可以轻松地使用:
else:
print "empty"
else
语法后面没有任何条件。如果其他条件的计算结果为False,它将自动输入缩进的代码块 首先,它不是len(“原件”)
它是len(原件)
。如果使用引号,则将其设置为常量值“original”,而不是名为original的变量
第二,不必检查字符串的长度,而应该使用
if original:
# Type here what happens if the string is not empty
else:
# Here what happens if the string is empty
根据Python标准,任何集合(包括字符串)如果为空(aka不包含任何元素),则等于false
,如果包含任何元素,则等于true
。要检查列表中是否有项,只需执行以下操作:
if List_name:
{code here}
...
因此,您的代码应该非常简单,如下所示:
print "Welcome to the English to Pig Latin translator!"
original = raw_input("what is your name?")
if original:
print original
else:
print "Empty"
很简单:D在else之后失去条件。它甚至不正确,它将是长度
永远不会小于0;只要else
就足够了。如果长度不大于零,并且不能小于零,则唯一剩下的选项是0。没有必要用elif length==0
替换else
。我知道,我只是想尽可能地遵守他的原始逻辑。@TrentBurkenpas那么你必须用复选标记奖励某人,否则你将来不会得到太多帮助!
else:
print "empty"
if original:
# Type here what happens if the string is not empty
else:
# Here what happens if the string is empty
if List_name:
{code here}
...
print "Welcome to the English to Pig Latin translator!"
original = raw_input("what is your name?")
if original:
print original
else:
print "Empty"