假设我在Python
中有以下代码:
orig_string = 'I am a string in python'
假设我想将这个字符串每10个字符分割一次,但不要分割单词,那么我想得到这个结果:
strings = ['I am a ', 'string in ', 'python']
或者这个(在分割处没有空格):
strings = ['I am a', 'string in', 'python']
因此,在每种情况下,拆分应该恰好在原本会被拆分的单词之前进行。
否则,我将得到这样的结果:
false_strings = ['I am a str', 'ing in pyt', 'hon']
仅提及我的情况,我想每15k个字符执行一次此操作,但我在上面给出的示例是每10个字符,以便可以在此处简洁地编写。
最有效的方法是什么?
textwrap.wrap(orig_string, 10)
几乎 可以实现你想要的效果;唯一的区别是它会移除原始字符串被分割的空格,返回['I am a', 'string in', 'python']
。 - chepner