这个问题在这里已有答案:
当我编译下面的Python代码时,我得到IndentationError:unindent与任何外部缩进级别都不匹配
Files = os.listdir(".")
monthNum = 1
totMonths = 0
for year in range(2003, 2016):
os.chdir('./'+str(year))
for month in range(1, 13):
totMonths = totMonths +1
if (month < 10):
monthStr = str(year)+"0"+str(month)
else:
monthStr = str(year)+str(month)
1 回答
当实际缩进与预期的缩进不匹配时会导致此错误 - 可能的罪魁祸首是制表符v空格和缩进一致性 .
例如,以下代码将抛出此错误:
请注意,虽然
true
语句缩进了4个空格,但false
语句缩进了5个 .此示例也会抛出此错误,并且取决于您的文本编辑器可能是不可见的(添加隐藏的字符以供参考):
在这种情况下,
true
语句使用四个空格字符缩进,而false
语句使用制表符号缩进 .除了您提供的IndendtationError之外,它还应该为您提供错误发生的确切行 . 也就是说,您提供的样本足够小,以至于整个事物的解决和重新定位应解决它 .