![](/img/trans.png)
[英]How to solve “IndentationError: expected an indented block” in Jupyter when importing a module?
[英]Nested for loop IndentationError: expected an indented block when using calendar module
我对python很陌生,因此请原谅任何基本错误。 我从网站上获取了这段代码(看起来相当简单),因此我认为它可以工作。 基本上,我希望该代码块打印出2015年至2016年之间的所有日期。据我所知,缩进看起来还不错。 我也尝试过调整缩进量,但是我没有运气让它生效。 任何帮助将不胜感激。
import calendar
cal = calendar.Calendar()
for year in range(2015,2016):
for month in range(1,13):
monthdays = [d for d in cal.itermonthdays(year,month) if d != 0]
for day in monthdays:
r = str(year) + str(month) + str(day)
print(r)
每当代码运行时,都会出现此错误:
>>> for year in range(2015,2016):
... for month in range(1,13):
File "<stdin>", line 2
for month in range(1,13):
^
IndentationError: expected an indented block
>>> monthdays = [d for d in cal.itermonthdays(year,month) if d != 0]
>>> for day in monthdays:
... r = str(year) + str(month) + str(day)
File "<stdin>", line 2
r = str(year) + str(month) + str(day)
^
IndentationError: expected an indented block
提前致谢。
缩进在Python中很重要。 如果您之前使用过C或Java代码,则块位于{
和}
之间,但是在Python中,则不同,将:
之后的缩进行视为“块”。 if
, while
, def
等之后的行必须通过空格或制表符进一步缩进。
问题是您可能将该代码复制并粘贴到IDE或终端中,并且缩进不保留。
看一下这些行:
>>> for year in range(2015,2016):
... for month in range(1,13):
双方for
在同一个缩进级别,他们之前没有空格/选项卡。 是问题 它应该是:
>>> for year in range(2015,2016):
... for month in range(1,13):
缩进可以是一个空格,两个空格或更多,也可以是制表符,只要它们是一致的即可。
等等...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.