首页 > 解决方案 > TypeError:'int' 对象不可下标。我应该怎么办?

问题描述

所以,我做了一个程序来计算矩阵加法、矩阵减少和矩阵乘法的总数,我得到了一个错误

    matrix = []
    matrix2 = []
    matrix3 = []
    kali = []
    kali2 = []
    wrong = 0


    print("matrix A : ")
    for i in range(2):
        A = [] 
        for j in range(2):
             A.append(int(input())) 
        matrix.append(A)

    print("Matrix A : ")
    for i in range(2):
        for j in range(2):
            print(matrix[i][j], end = " ") 
        print() 
    print()
    print()


    print("matrix B : ")
    for i in range(2):
        B = [] 
        for j in range(2):
             B.append(int(input())) 
        matrix2.append(B)

    print("Matrix B : ")
    for i in range(2):
        for j in range(2):
            print(matrix2[i][j], end = " ") 
        print() 
    print()
    print()


    print("matrix C : ")
    for i in range(2):
        C = [] 
        for j in range(2):
             C.append(int(input())) 
        matrix3.append(C)

    print("Matrix C : ")
    for i in range(2):
        for j in range(2):
            print(matrix3[i][j], end = " ") 
        print() 
    print()
    print()

    while wrong < 1:
        choose = (str(input("(+/-/*)? : ")))
        if choose == "+":
            print("result : ")
            for i in range(2):
                for j in range(2):
                    print(A[i][j]+B[i][j]+C[i][j], end = " ")
                print()
            wrong = 0
        elif choose == "-":
            print("result : ")
            for i in range(2):
                for j in range(2):
                    print(A[i][j]-B[i][j]-C[i][j], end = " ")
                print()
            wrong = 0
        elif choose == "*":
            print('temp')
        else:
            print("error")
            wrong = 1

我在输入数组后输入+,我得到了这个

Traceback(最近一次调用最后一次):
文件“main.py”,第 65 行,在
print(A[i][j]+B[i][j]+C[i][j], end = "")
TypeError:“int”对象不可下标

我试图创建一个新变量并将其更改为 str 但它不起作用

                totalsum = A[i][j]+B[i][j]+C[i][j]
                totalsum = str(totalsum)
                print (totalsum)

我懂了

Traceback(最近一次调用最后一次):
文件“main.py”,第 65 行,
总计 = A[i][j]+B[i][j]+C[i][j]
TypeError: 'int' object不可下标

还是一样

请帮我

标签: python

解决方案


totalsum = A[i][j]+B[i][j]+C[i][j]   

???

它不应该是:

matrix[i][j]+matrix2[i][j]+matrix3[i][j] 

推荐阅读