将元组的一部分添加到新列表中

时间:2018-06-17 23:10:03

标签: python python-3.x dictionary

我创建了一个字典,我需要将单个元组的值添加到一个新的字典中。我似乎无法让我的密钥方法工作。我收到此错误" TypeError:' int'对象不是可订阅的"

  

这是我的密钥方法所在的位置。我在行中出错了   newlist.append(I [0])。我试图将元组的关键部分附加到>新列表名称​​新列表

def keys(self):
    newlist = self.flattened()
    keylist = []
    for i in newlist:
        newlist.append(i[0])
    return newlist
  

这是我的TestCase for keys方法

class test_keys(unittest.TestCase):
def test(self):
    s = Dictionary([[0, "zero"], [1, "one"], [2, "two"], [3, "three"]
    self.assertEqual(s.keys(), [0, 1, 2, 3])

1 个答案:

答案 0 :(得分:0)

问题是您正在遍历列表并同时更改它。

更改

def keys(self):
    newlist = self.flattened()
    keylist = []
    for i in newlist:
        newlist.append(i[0])
    return newlist

def keys(self):
    newlist = self.flattened()
    keylist = []
    for i in newlist:
        keylist.append(i[0])
    return keylist