上QQ阅读APP看书,第一时间看更新
2.2.7 字符串格式化
我们在工作过程中有时会有以指定的列宽将长字符串重新格式化的需求,此时可使用textwrap模块来格式化长字符串的输出。相关代码(str_format.py)示例如下:
test_str = "PyCons take place throughout many parts of the world. \ Each PyCon is different in its own way; drawing from its \ own geographical location as well as local history and culture. \ In 2017 another beautiful country opened its doors to a new PyCon, \ with the launch of PyCon Colombia. "
使用textwrap格式化字符串的多种方式(str_format.py)如下:
import textwrap print(textwrap.fill(test_str, 70)) print(textwrap.fill(test_str, 40)) print(textwrap.fill(test_str, 40, initial_indent=' ')) print(textwrap.fill(test_str, 40, subsequent_indent=' '))
textwrap模块对于字符串打印是非常有用的,特别是当希望输出自动匹配终端大小的时候。我们可以使用os.get_terminal_size()方法来获取终端的大小,示例如下:
import os print(os.get_terminal_size().columns)
fill()方法可接收一些其他可选参数来控制tab、语句结尾等。