我连续打印了几个变量。其中一个变量是一个非常长的字符串,我想要包装文本(目前它在一行的末尾打印半个字,如果必须的话)所以我希望整个单词从下一行开始如果全部它不适合上一行。
例如:
print(item.name,":",item.description,"\n\nValue :",item.value)
我需要item.decription来包装。如果有帮助的话,我可以把整个包装好,但我不想在任何情况下最终在屏幕上留下字符。我试过了:
import textwrap
print(item.name,":",textwrap.wrap(item.description),"\n\nValue :",item.value)
但这不起作用。单词不包装,我在输出中得到方括号字符和随机逗号。我应该如何完成一个非常简单的包装呢?
答案 0 :(得分:8)
使用textwrap.fill()
代替,它使用换行符加入行:
print(item.name, ":", textwrap.fill(item.description), "\n\nValue :", item.value)
textwrap.wrap()
会返回包装行的列表。