-1
我想测试Lo Shu Magic Square功能,但是我遇到了一些问题。其中一个问题是我得到一个错误消息,指出TypeError:'int'对象不可迭代,但我没有看到我做错了什么。其次,是否有更好的方法来编写此代码来检查lo_shu_square变量是否为Lo Shu Magic Square?我是Python的新手,但它似乎效率低下。Python Lo Shu Magic
ROWS = 3
COLUMNS = 3
def magic():
lo_shu_square = [[8, 1, 6],[3, 5, 7],[4, 9, 2]]
for r in range (ROWS):
for c in range (COLUMNS):
if sum(r) == sum (lo_shu_square[c][c] for c in range(COLUMNS)):
if sum(r)== sum(r[c] for r in lo_shu_square):
answer_output = str('a Lo Shu Magic Square')
else:
answer_output = str('not a Lo Shu Magic Square')
print("The inputs are", answer_output)
magic()
错误消息:
if sum(r) == sum (lo_shu_square[c][c] for c in range(COLUMNS)):
TypeError: 'int' object is not iterable
'r'是一个'int'数字,你不能在'int'数字上调用'sum'函数。 – Arman