Python 的打印与返回缩进规则



请考虑此代码

board = []
for x in range(0, 5):
board.append(["O"] * 5)
def print_board(board):
for row in board:
x=" ".join(row)
print x
return x

这会产生呜

和这个代码

board = []
for x in range(0, 5):
board.append(["O"] * 5)
def print_board(board):
for row in board:
x=" ".join(row)
print x
return x

这产生

OOOOO
OOOOO
OOOOO
OOOOO
OOOOO

有人可以解释为什么吗?

在第一个函数中,您将在第一次迭代后return出循环,因此不再运行print语句。

这是Python"缩进敏感性"的证明,在其他语言中,由于大括号的存在,这可能不会产生差异;在Python中,它确实如此。

最新更新