Python将错误的参数附加到列表中

时间:2014-05-13 21:08:27

标签: python list append

我在Python中遇到了问题。 我创建了一个方法,从二维列表中为空列表添加值,该列表是从.txt的数据创建的。 当我选择在空列表中添加数字4和2(从4)时,它表示我只添加了1,2而不是4和2。问题在哪里?

这是代码(抱歉,对于代码中的“未知”语言,我是立陶宛语,所以程序必须用这种语言编写) self.PriskirtiDydžiai是附加值的空列表。 GalimiPriimtiDUOMENYS [0]是选择数据的二维列表的第一个元素。它是我作品的剪裁。这是课程方法之一。

   #self.GalimiPriimtiDUOMENYS  This list gets data from .txt   The list looks like that : [1,2,3,4][1,2,3,4,5,6,7,8,9,10]
     def GalimuDydziuPriskyrimas (self,Krovinys):                              
           DYDNR=int(input("write value (from 1 to 4): "))
           if DYDNR>len(self.GalimiPriimtiDUOMENYS[0]):
                print("this number do not exist , try again")
                DYDNR=int(input("write value (from 1 to 4): "))
                self.PriskirtiDydziai.append(self.GalimiPriimtiDUOMENYS[0][DYDNR-1])
           else:
                self.PriskirtiDydziai.append(self.GalimiPriimtiDUOMENYS[0][DYDNR-1])

当我打印名为GalimiPriimtiDUOMENYS的列表时,我得到了这个:

    >>>b1.GalimiPriimtiDUOMENYS
    [[1, 2, 3, 4], [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]]

1 个答案:

答案 0 :(得分:0)

您的二维数组看起来像l=[[1,2,3,4],[1,2,3,4,5,6,7,8,9,10]]

In [5]: l=[[1,2,3,4],[1,2,3,4,5,6,7,8,9,10]]

In [13]: l[0][1] # index of 2
Out[13]: 2

In [14]: l[0][3] # index of four
Out[14]: 4

您正在追加[0][DYDNR-1],其中输入需要2才能获得2 [0][2-1]而4则需要4 l[0][4-1]

如果不运行你的功能,很难看出它可能出错的地方。