Python if-else循环中列表的时间格式不起作用
错误: 文件“main.py”,第13行Python if-else循环中列表的时间格式不起作用,python,Python,错误: 文件“main.py”,第13行 打印(hr1) ^ 缩进错误:未缩进与任何外部缩进级别不匹配 代码如下: timing = ["3:00 PM", "3:10", "Monday"] for i, timer in enumerate(timing): if ":" in timing[i]: # Trying to take both 3:00 PM and 3:00 from list
打印(hr1)
^
缩进错误:未缩进与任何外部缩进级别不匹配 代码如下:
timing = ["3:00 PM", "3:10", "Monday"]
for i, timer in enumerate(timing):
if ":" in timing[i]: # Trying to take both 3:00 PM and 3:00 from list
if " " in timing[i]: # Trying to take 3:00 PM from list
hr1, term = timing[i].split(":")
min1, ender = term.split(" ")
else: # Trying to take Monday from list
hr2, min2 = timing[i].split(":")
if ":" not in timing[i]:
day = timing[i]
print(hr1)
print(min1)
print(hr2)
print(min2)
制表符被双空格替换。仍然存在错误
有什么解决办法吗?您的错误在缩进中。Python对缩进非常关键 将最后一行的
打印
代码向左对齐,而不是居中对齐:
print(hr1)
而不是
print(hr1)
您的问题是第一层
if
-语句缩进三个空格,第二层五个空格,后续变量赋值六个空格,而print
语句四个空格。因此,系统不知道在哪个语句下打印
是否确实要在for
-循环中打印语句?如果您完全取消输入它们,它们将在for
-循环完成后打印,从而解决您的问题。您需要格式化代码。添加适当的缩进。错误消息似乎足够描述性;行print(hr1)
没有缩进到与上面任何行相同的级别。使用制表符而不是空格,这样很容易管理。不过,我很确定他的print
语句没有居中对齐。