python:为什么这段代码会出现“IndentationError: expected an indented block”?

-3 投票
2 回答
8272 浏览
提问于 2025-04-17 03:21

请查看 列表9. 迭代和字典

>>> d = {0: 'zero', 3: 'a tuple', 'two': [0, 1, 2], 'one': 1}
>>> for k in d.iterkeys():
... print(d[k])
  File "<stdin>", line 2
    print(d[k])
        ^
IndentationError: expected an indented block

为什么?

2 个回答

1

即使在使用Python的交互式解释器时,你也需要确保新代码块有一些缩进。

这个:

>>> for k in d.iterkeys():
... print(d[k])

应该是这个:

>>> for k in d.iterkeys():
...     print(d[k])

顺便提一下:那个链接里的预期输出有很多错误,可能是复制粘贴时出问题了?

2

Python 3没有iterkeys这个功能。你可以直接使用:

for k in d:
    print(d[k])

或者更好的方法是:

for v in d.values():
    print(v)

撰写回答