python,字符串方法

时间:2012-11-09 19:09:58

标签: python string split

  

可能重复:
  Pythonic way to insert every 2 elements in a string

如果有人可以帮助python代码,我会很高兴)) 如何将空格放入字符串中 例如,

如果有字符串'akhfkahgdsds' 我想把它变成'ak hf ka hg ds ds'

4 个答案:

答案 0 :(得分:7)

>>> s = 'akhfkahgdsds'
>>> range(0, len(s), 2) # gives you the start indexes of your substrings
[0, 2, 4, 6, 8, 10]
>>> [s[i:i+2] for i in range(0, len(s), 2)] # gives you the substrings
['ak', 'hf', 'ka', 'hg', 'ds', 'ds']
>>> ' '.join(s[i:i+2] for i in range(0, len(s), 2)) # join the substrings with spaces between them
'ak hf ka hg ds ds'

答案 1 :(得分:0)

def isection(itr, size):
    while itr:
        yield itr[:size]
        itr = itr[size:]

' '.join(isection('akhfkahgdsds', 2))

答案 2 :(得分:0)

我真的不认为这是去这里的方式,但我认为这个答案无论如何都很有趣。如果字符串的长度始终是偶数,则可以使用iter播放整齐的技巧 - 如果它是奇数,则最后一个字符将被截断:

s = '11223344'
i_s = iter(s)
' '.join(x+next(i_s) for x in i_s)

当然,您可以随时填写:

i_s = iter(s+len(s)%2*' ')

答案 3 :(得分:0)

你可以尝试这个简单的代码:

try:
    for i in range(0,len(s)+1,2):
        print s[i]+s[i+1],
except IndexError:
    pass