33

文字列があるとしますs = 'BINGO'。生成する文字列を反復処理したい'B I N G O'

これは私がしたことです:

result = ''
for ch in s:
   result = result + ch + ' '
print(result[:-1])    # to rid of space after O

これについてもっと効率的な方法はありますか?

4

4 に答える 4

63
s = "BINGO"
print(" ".join(s))

やるべきです。

于 2013-08-14T00:39:10.167 に答える
26
s = "BINGO"
print(s.replace("", " ")[1: -1])

以下のタイミング

$ python -m timeit -s's = "BINGO"' 's.replace(""," ")[1:-1]'
1000000 loops, best of 3: 0.584 usec per loop
$ python -m timeit -s's = "BINGO"' '" ".join(s)'
100000 loops, best of 3: 1.54 usec per loop
于 2013-08-14T00:46:04.413 に答える