如何解决我的问题:TypeError:'int'对象不支持项目赋值

时间:2017-03-31 10:36:50

标签: python

python的新手,我在尝试运行代码时不断收到此错误。这是我正在尝试运行的代码

table=[0]*3
column=0
n=0
with open('matrix.txt','r') as f:
    numbers=f.read()
    numbers=[int(x) for x in numbers.split()]
    for i in range(3):
        table[column]=[0]*3
        for j in range(3):
            table[i][j]=numbers[n]
            n+=1
    collumn+=1
print(table)    

我想在我的文件中制作一个3x3的内容表。文件内容是;

  

2 3 4 1 2 6 9 8 9

运行时我不断收到错误消息。关于如何修复它的任何想法?

3 个答案:

答案 0 :(得分:3)

你让它变得比以前更加复杂:

numbers = [2, 3, 4, 1, 2, 6, 9, 8, 9]
table = [numbers[i:i+3] for i in range(0, len(numbers), 3)]

答案 1 :(得分:2)

您正在将外部for循环外部的列递增。而且,拼写错误。

答案 2 :(得分:0)

怎么样:

import numpy as np 
with open('matrix.txt','r') as f:
    numbers=f.read()
    table =np.array([int(x) for x in numbers.split()]).reshape((3,3))
print(table)

如果你真的坚持你的表不是一个numpy数组,只需将其转换为列表:

table = table.tolist()