0

のような文字列があり、'01301347'それを のようなものに分割したいと考えてい'01-13-30-01-13-34-47'ます。

を使用してこのようなことを行うことは可能split()ですか?

4

3 に答える 3

3

分割ではなく、スプライスして結合したい:

'-'.join(mystr[i:i+2] for i in xrange(0, len(mystr)-1))

itertools.isliceおよびを使用することもできますitertools.izip

'-'.join((a+b for a,b in itertools.izip(mystr, itertools.islice(mystr, 1, len(mystr)))))
于 2013-07-15T20:22:07.617 に答える
1
>>> s = '01301347'
>>> '-'.join(s[i:i+2] for i in range(0, len(s) - 1))
'01-13-30-01-13-34-47'

または次を使用できます。

>>> '-'.join(a+b for a,b in zip(s, s[1:]))
'01-13-30-01-13-34-47'
于 2013-07-15T20:23:47.187 に答える