我试图让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。
任何人都可以帮我解决这个问题吗?
答案 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