Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 按字数拆分字符串_Python - Fatal编程技术网

Python 按字数拆分字符串

Python 按字数拆分字符串,python,Python,我有一个字符串,我想把它分成一个列表,这样列表中的每个元素都有N个单词。 如果最后一个元素没有足够的单词,请保持原样 例如: >>按单词分割(string=“我养了一只乌龟。它是一种非常慢但可爱的动物。”,N=4) [“我养了一只乌龟”,“它很慢”,“但很可爱。”] 我试着这样做: def按单词拆分(字符串,N): 单词列表=[“”] 对于字符串中的字符串。split()[:N]: 单词列表[0]+=a+“” ..... 但我不知道如何继续处理其他元素试试这个: def Split_by_N

我有一个字符串,我想把它分成一个列表,这样列表中的每个元素都有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.']