使用python中的while循环从列表中打印单词块

2024-09-30 02:17:06 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图编写一个名为printcunks的函数,它有3个参数

def printChunks(filename, chunkSize, numChunks)

printChunks最多打印一个由filename给定的文本文件中的单词创建的numChunks“chunks”序列。 chunk是由一个空格分隔的最大单词序列串联而成的字符串,其长度不超过chunkSize。为了简单起见,任何长度大于chunkSize的单词都应该被视为单个“超大”块并打印出来。 到目前为止,我想到了这个:

^{pr2}$

请协助我是python新手


Tags: 函数字符串参数def序列filename单词chunks
1条回答
网友
1楼 · 发布于 2024-09-30 02:17:06

像这样的事,应该能让你走。在

long_text = """Bacon ipsum dolor amet ham picanha corned beef shank
swine cow pancetta. Tongue flank jerky pork loin, salami boudin
brisket pastrami venison capicola pig turkey cow chuck. Capicola pork
belly andouille ribeye pancetta kevin pork chop ball tip turducken
doner kielbasa. Shankle pig cow jowl leberkas spare ribs doner
kielbasa shoulder capicola prosciutto corned beef chicken. Corned beef
pig porchetta, kevin tail ham beef ribs ham hock shankle sausage
venison sirloin ball tip.
"""

def get_chunks(text, chunk_size, num_chunks):
    words = text.split(' ')
    chunks = []
    chunk = ''
    for word in words:
        if len(chunk) < chunk_size:
            chunk += word + ' '
        else:
            chunks.append(chunk)
            chunk = ''
        if num_chunks == len(chunks):
            return ' '.join(chunks)

print(get_chunks(long_text, 20, 2))

所以基本上,我们先把单词列出来。然后创建一个空的块列表来填充。然后,我们只需迭代单词列表,将其附加到块字符串中,直到完全,然后附加到chunks列表并重置chunk。在

我有一个额外的空间,但你可以解决。在

相关问题 更多 >

    热门问题