Я пытаюсь преобразовать многозначную строку в подсписках в подсписки из однозначных целых чисел.
Я хотел бы добиться этого, используя простое понимание списка.
Оригинальный список:
# [[], ['0000000'], ['2200220'], ['2222220'], ['2200220'], ['2000020'], []]
Список голов:
# [[0, 0, 0, 0, 0, 0, 0], [2, 2, 0, 0, 2, 2, 0], [2, 2, 2, 2, 2, 2, 0], [2, 2, 0, 0, 2, 2, 0], [2, 0, 0, 0, 0, 2, 0]]
Следующая тема помогла мне зайти так далеко.
Список списка, преобразование всех строк в int, Python 3
Если я использую это понимание вложенного списка, строки превращаются в одно целое число.
mylist = [[int(i) for i in s] for s in mylist]
# [[], [0], [2200220], [2222220], [2200220], [2000020], []]
Я смог сделать то, что хотел, используя два шага, которые включали импорт модуля, но это не идеально.
import itertools
mylist = list(itertools.chain.from_iterable(mylist))
# ['0000000', '2200220', '2222220', '2200220', '2000020']
mylist_two = [[int(i) for i in str(s)] for s in mylist]
# [[0, 0, 0, 0, 0, 0, 0], [2, 2, 0, 0, 2, 2, 0], [2, 2, 2, 2, 2, 2, 0], [2, 2, 0, 0, 2, 2, 0], [2, 0, 0, 0, 0, 2, 0]]
Может ли кто-нибудь указать мне правильное направление? Спасибо.