输入: string = 53434951
我需要拆分字符串,以便输出读取: 53 43 49 51
答案 0 :(得分:2)
试试这个:
for i in xrange(0, len(input), 2):
out += input[i:i+2] + " "
答案 1 :(得分:2)
您可以使用以下内容:
s = "534349511"
print ' '.join([s[i:i+2] for i in range(0,len(s),2)])
请注意,这也适用于长度不均匀的列表 - 在一个空格后,您只需要一个数字。
答案 2 :(得分:1)
def convert(s):
r = ""
for i, c in enumerate(s):
if i and i %2 == 0:
r += ' '
r += c
return r
我的解决方案不会在最后打印任何额外的空格。
答案 3 :(得分:0)
您也可以使用re.findall
。
In [5]: import re
In [6]: s = "53434951"
In [7]: print(' '.join(re.findall(r'.{2}', s)))
53 43 49 51
或强>
使用re.sub
In [9]: print(re.sub(r'(.{2})(?=.)', r'\1 ', s))
53 43 49 51