Как вставить символ в строку через каждых 4 символа в ней? Python

Всем здравствуйте, пишу программу на python, которая спрашивает у пользователя его номер карты, который я методом replace превращаю в строку с 16 элементами, хотелось бы через каждых 4 элемента вставлять пробел, чтобы номер был читабельнее Как из '1234123412341234' получить '1234 1234 1234 1234' ?


Ответы (3 шт):

Автор решения: CrazyElf

С помощью срезов, например:

number = '1234123412341234'
number_ = ' '.join(number[i*4:(i+1)*4] for i in range(4))
print(number_)
# 1234 1234 1234 1234
→ Ссылка
Автор решения: Stanislav Volodarskiy

Срезы и шаги с помощью range:

number = '1234123412341234'
step = 4
print(' '.join(number[i:i + step] for i in range(0, len(number), step)))
→ Ссылка
Автор решения: TigerTV.ru

Вариант с zip_longest:

from itertools import zip_longest

number = '1234' * 4
length = 4
res = ' '.join(map(''.join, zip_longest(*[iter(number)] * length)))
print(res)
→ Ссылка