@dllngr

Как разбить двухзначные числа и более на однозначные и добавить их списком в список?

Здравствуйте. Подскажите, пожалуйста. Есть следующий код который разбивает числа на цифры.
a = 1
b = 20
L = list(range(a,b+1))
X = []
print(L)
for i in L:
    while i != 0:
        z = i % 10
        X.append(z)
        i = i // 10
print(X)

В итоге выводится:
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20] - список L 
[1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 1, 1, 2, 1, 3, 1, 4, 1, 5, 1, 6, 1, 7, 1, 8, 1, 9, 1, 0, 2] - список Х

Как сделать, чтобы отдельные цифры числа добавлялись списком или кортежем внутрь списка X? То есть чтобы список Х имел следующий вид:
[[1], [2], [3], [4], [5], [6], [7], [8], [9], [0, 1], [1, 1], [2, 1], [3, 1], [4, 1], [5, 1], [6, 1], [7, 1], [8, 1], [9, 1], [0, 2] - список Х
  • Вопрос задан
  • 291 просмотр
Решения вопроса 2
Vindicar
@Vindicar
RTFM!
У тебя внутренний цикл while разбивает одно число. Перед этим циклом создай новый список, и закидывай числа туда, а не в X. После while закидывай этот список в X.
Ответ написан
kshnkvn
@kshnkvn
yay ✌️ t.me/kshnkvn
a = 1
b = 20
L = list(range(a,b+1))
X = [[int(d) for d in str(n)] for n in L]
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы