>>> import textwrap
>>> string = "This is a very very very very very long string."
>>> print textwrap.wrap(string,8)
>>> print textwrap.fill(string,8)
輸出:[ '字符串' '這是', '非常', '非常', '非常', '非常', '非常', '長',]textwrap.wrap()和textwrap.fill()如何在python 2中正確工作?
這是
非常
非常
非常
非常
非常
長
字符串。
我得到了一個事實,textwrap.wrap()給了我一個列表,textwrap.fill給了我一個字符串。 在文檔中它說:「用文本(一個字符串)包裝單個段落,所以每行至多是寬度字符長度」。
但我不明白爲什麼不是由textwrap.wrap()形成的列表中的每個元素的長度,如果將8作爲寬度參數傳遞,則爲8。爲什麼有時候7,6等等。
同樣,我不明白爲什麼在textwrap.fill()的情況下,每行的長度= 8個字符(如果寬度傳遞爲8或5,如果寬度傳遞爲5)。如在例子中,其有時,7,6,4等。爲什麼不完全等於寬度。 因爲它說最多每行都應該是寬度字符長,所以爲什麼它在使用所有可用的8個字符之前中斷,如果與8傳遞?
它不應該是這樣的下面:
>>> import textwrap
>>> string = "This is a very very very very very long string."
>>> print textwrap.fill(string,8)
OUTPUT:
這是
非常v
紅黴素非常
非常五個
ry long
string。
請幫我理解。提前致謝。