Добавление части кортежа в новый список

1

Я создал словарь, и мне нужно добавить значение одного кортежа в новый словарь. Я не могу заставить мой метод ключей работать. Я получаю эту ошибку "TypeError: объект" int "не подлежит расшифровке"

Именно здесь находится мой ключевой метод. Я получаю сообщение об ошибке в строке с именем newlist.append(i [0]). Я пытаюсь добавить ключевую часть кортежа в список> new list name newlist

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

Это мой TestCase для метода ключей

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])
Теги:
python-3.x
dictionary

1 ответ

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

Ещё вопросы

Сообщество Overcoder
Наверх
Меню