Вопрос по string, python – Как мне вставить пробел после определенного количества символов в строке, используя python?

8

Мне нужно вставить пробел после определенного количества символов в строке. Текст - это предложение без пробелов, и его нужно разделять пробелами после каждых n символов.

так должно быть что-то вроде этого.

<code>thisisarandomsentence
</code>

и я хочу, чтобы он возвращался как:

<code>this isar ando msen tenc e
</code>

у меня есть функция:

<code>def encrypt(string, length):
</code>

В любом случае, это можно сделать на python?

Ваш Ответ

2   ответа
14
def encrypt(string, length):
    return ' '.join(string[i:i+length] for i in range(0,len(string),length))

encrypt('thisisarandomsentence',4) дает

Для совместимости с Python 3 замените xrange на диапазон Wassim Boussetta
ЭТО СРАБОТАЛО!!! ты великолепен! Спасиб user15697
1

С помощьюitertools рецепт окуня:

>>> from itertools import izip_longest
>>> def grouper(n, iterable, fillvalue=None):
        "Collect data into fixed-length chunks or blocks"
        # grouper(3, 'ABCDEFG', 'x') --> ABC DEF Gxx
        args = [iter(iterable)] * n
        return izip_longest(fillvalue=fillvalue, *args)

>>> text = 'thisisarandomsentence'
>>> block = 4
>>> ' '.join(''.join(g) for g in grouper(block, text, ''))
'this isar ando msen tenc e'
спасибо :) также работал! искал это последние 6 часов !! user15697

Похожие вопросы