3 回答
TA贡献1830条经验 获得超3个赞
您的函数已经进行了打印,print()调用它时无需使用。所以改变:
print(printMatrix(matrix))
只是:
printMatrix(matrix)
仅为副作用而调用的函数不需要返回任何内容,并且您不应尝试使用返回值。
或者,您可以更改函数,使其以字符串形式返回格式化矩阵,而不是自行打印:
def formatMatrix(matrix):
return "\n".join(" ".join(row) for row in matrix)
print(formatMatrix(matrix))
TA贡献1818条经验 获得超11个赞
matrix = [
['.', '.', '.', '.', '.', '.', '.'],
['.', '.', '.', '.', '.', '.', '.'],
['.', '.', '.', '.', '.', '.', '.'],
['.', '.', '.', '.', '.', '.', '.'],
['.', '.', '.', '.', '.', '.', '.'],
['.', '.', '.', '.', '.', '.', '.'],
['.', '.', '.', '.', '.', '.', '.'],
]
for line in matrix:
print(*line, sep=' ')
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
TA贡献1874条经验 获得超12个赞
或进行printMatrix以下操作:
def printMatrix(matrix):
s=''
for i in matrix:
s += (' '.join(i)+'\n')
return s
现在您的代码将按预期工作。
添加回答
举报