我有一个简单的if else语句,这给了我错误的结果。
a=36
MITTEN = 42
if a <= MITTEN:
print("A", end=" ")
print("B", end=" ")
else:
print("C", end=" ")
print("D")
这给我的结果是 A B
但正确的答案应该是 A B D
答案 0 :(得分:4)
这取决于你在两种情况下都会得到什么。
如果您期望A B D
当且仅当a <= MITTEN
,那么您应该将print("D")
放入if子句:
a=36
MITTEN = 42
if a <= MITTEN:
print("A", end=" ")
print("B", end=" ")
print("D")
else:
print("C", end=" ")
另一方面,如果您希望print("D")
独立于a <= MITTEN
的结果,那么您应该删除最后一行中的缩进:
a=36
MITTEN = 42
if a <= MITTEN:
print("A", end=" ")
print("B", end=" ")
else:
print("C", end=" ")
print("D")
答案 1 :(得分:2)
你应该始终牢记: “Whitespace在Python源代码中很重要。” 所以不要只是从上到下阅读源代码,还要关注缩进。
答案 2 :(得分:1)
取消print ("D")
行。在您的代码中,该行仅在条件时执行
a <= MITTEN:
为False
。
a=36
MITTEN = 42
if a <= MITTEN:
print("A", end=" ")
print("B", end=" ")
else:
print("C", end=" ")
print("D")
请注意,如果该条件为False
,则输出为C D
,如果True
则为A B D
。
使用四个空格进行缩进。
答案 3 :(得分:1)
取消最后一行
a=36
MITTEN = 42
if a <= MITTEN:
print("A", end=" ")
print("B", end=" ")
else:
print("C", end=" ")
print("D")
答案 4 :(得分:1)
我假设这是一个功课,如果你只是粘贴答案而不是代码,那么确定你的答案是否正确的程序对于{是否添加了尾随空格敏感{1}}打印功能的参数,或者我刚刚看到其他答案进来(对你正在做的课程更熟悉!),可能是缩进;如果'D'应该最后打印,则不能在第一个条件中。