![](/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.