def insertNewline(text, length):
'''
This function can only be applied to normal text.
'''
if len(text) <= length:
print(text)
return
elif text[length - 1] == ' ':
print(text[:length - 1])
return insertNewline(text[(length):], length)
elif text[length] == ' ':
print(text[:length])
return insertNewline(text[(length + 1):], length)
else:
i = 0
while text[length + i] != ' ' and text[length + i] != ',' and text[length + i] != '.':
i += 1
if text[length + i] == ' ':
print(text[:(length + i)])
return insertNewline(text[(length + i + 1):], length)
else:
print(text[:(length + i + 1)])
return insertNewline(text[(length + i + 2):], length)
此代码适用于普通文本,我的意思是简单的英语句子,只有“,”和“。” 作为标点符号,并且每个标点符号之后只有一个空格,就像正常的论文写作一样。如果您想将此代码应用于更完整的文本,我认为您可以自己更新此代码。我根据您的问题使用“递归”。我认为这段代码应该对你有帮助。我不是python专家,还在学习过程中。希望你能从我的回答中得到你想要的。