【发布时间】:2014-04-05 13:13:13
【问题描述】:
如何在 python 上将字符串:“Blahblahblahblah”分成“Blah”“blah”“blah”“blah”。我尝试了以下方法:
str = "Blahblahblahblah"
for letter[0:3] on str
我该怎么做?
【问题讨论】:
-
试试这个代码:
' b'.join(str.split('b'))
如何在 python 上将字符串:“Blahblahblahblah”分成“Blah”“blah”“blah”“blah”。我尝试了以下方法:
str = "Blahblahblahblah"
for letter[0:3] on str
我该怎么做?
【问题讨论】:
' b'.join(str.split('b'))
如果您不介意使用re 库。在此示例中,正则表达式 .{4} 表示长度为 4 的 any character except \n。
import re
str = "Blahblahblahblah"
print re.findall(".{4}", str)
输出:
['Blah', 'blah', 'blah', 'blah']
注意: str 不是一个很好的变量名。因为python中有一个名为str()的函数,可以将给定的变量转换成字符串。
【讨论】:
str 不是 一个好的选择 :) 和 . 表示 any i> 不是换行符(除非另有说明) - 不是 non-whitespace char
str。我为此添加了note。
试试:
>>> SUBSTR_LEN = 4
>>> string = "bla1bla2bla3bla4"
>>> [string[n:n + SUBSTR_LEN] for n in range(0, len(string), SUBSTR_LEN)]
['bla1', 'bla2', 'bla3', 'bla4']
【讨论】: