Python 按字数拆分字符串
我有一个字符串,我想把它分成一个列表,这样列表中的每个元素都有N个单词。 如果最后一个元素没有足够的单词,请保持原样 例如:Python 按字数拆分字符串,python,Python,我有一个字符串,我想把它分成一个列表,这样列表中的每个元素都有N个单词。 如果最后一个元素没有足够的单词,请保持原样 例如: >>按单词分割(string=“我养了一只乌龟。它是一种非常慢但可爱的动物。”,N=4) [“我养了一只乌龟”,“它很慢”,“但很可爱。”] 我试着这样做: def按单词拆分(字符串,N): 单词列表=[“”] 对于字符串中的字符串。split()[:N]: 单词列表[0]+=a+“” ..... 但我不知道如何继续处理其他元素试试这个: def Split_by_N
>>按单词分割(string=“我养了一只乌龟。它是一种非常慢但可爱的动物。”,N=4)
[“我养了一只乌龟”,“它很慢”,“但很可爱。”]
我试着这样做:
def按单词拆分(字符串,N):
单词列表=[“”]
对于字符串中的字符串。split()[:N]:
单词列表[0]+=a+“”
.....
但我不知道如何继续处理其他元素试试这个:
def Split_by_N_words(string, N):
word_list = string.split()
out_list = []
for el in range(0, len(word_list), N):
out_list.append((" ".join(word_list[el:el+N])))
return (out_list)
print (Split_by_N_words("I grow a turtle. It's a very slow but cute animal.", 4))
请看一个类似的问题,该问题涉及列表,除非有充分的理由不这样做,否则变量和函数名称应遵循带有下划线的
小写形式。
split(): splits the string at spaces
ls[i:i+4]: creates a list with 4 strings
" ".join(): concatenates the strings with spaces
In : ls= s.split()
In : [ " ".join(ls[i:i+4]) for i in range(0,len(ls),4) ]
Out: ['I grow a turtle.', "It's a very slow", 'but cute animal.']