Python 3.4-定期插入空格

时间:2016-02-26 21:57:42

标签: python

我试图让Python允许我在一个字符串中定期插入一个空格(每隔5个字符)。 这是我的代码:

str1 = "abcdefghijklmnopqrstuvwxyz"
list1 = []
list2 = []
count = 3
space = " "

# converting string to list
for i in str1:
    list1.append(i)
print(list1)

# inserting spaces
for i in list1:
    mod = count%6
    count = count + 1
    if mod == 0:
        list1.insert(count,space)
        count = count + 1
#converting back to a string
list2 = "".join(list1)
print(str(list2))
然而,它将第一部分组合为7。 任何人都可以帮我解决这个问题吗?

2 个答案:

答案 0 :(得分:1)

使用正则表达式非常容易:

>>> import re
>>> ' '.join(re.findall(r'.{1,5}', str1))
'abcde fghij klmno pqrst uvwxy z'

或使用切片:

>>> n=5
>>> ' '.join([str1[i:i+n] for i in range(0, len(str1), n)])
'abcde fghij klmno pqrst uvwxy z'

答案 1 :(得分:0)

一步一步脚本:

您可以使用string模块以小写字母获取所有ascii字母:

from string import ascii_lowercase

现在,您可以使用以下内容迭代每五个字符并添加一个空格:

result = ""
for i in range(0,len(ascii_lowercase), 5):
    result += ascii_lowercase[i:i+5] + ' '
print(result)

打印以下结果:

abcde fghij klmno pqrst uvwxy z