类固醇打印和格式化
sa的Python项目详细描述
自从C引入printf()和 位置参数的格式化打印。现在不是升级的时候吗? 你肯定!
sayevolves python的print 语句/函数、format函数/方法和%字符串 具有更简单、更高级功能的插值运算符。例如, 它提供直接的模板格式:
from say import * x, nums, name = 12, list(range(4)), 'Fred' say("There are {x} things.") say("Nums has {len(nums)} items: {nums}") say("Name: {name!r}")
产量:
There are 12 things. Nums has 4 items: [0, 1, 2, 3] Name: 'Fred'
或者不是立即打印字符串,而是需要字符串本身, fmt()函数是我们的sprintf()版本。:
>>> fmt("{name} has {x} things and {len(nums)} numbers.") 'Fred has 12 things and 4 numbers.'
打印的项目越多,^{tt5}越复杂$ 调用,这个简单的内联规范就越有价值。
但是就像用内联替换位置模板一样好 模板 是–事实终于正式适应了 python 3.6的格式化字符串文本–say 做得更多。 它还可以通过多种方式提高输出生成任务的级别。 例如:
say.title('Discovered') say("Name: {name:style=blue}", indent='+1') say("Age: {age:style=blue}", indent='+1')
打印一个格式良好的文本块,具有适当的标题和缩进, 只有蓝色的变量信息。
say提供:
- 干的,pythonic的,内联的字符串模板 python已经很好地证明了format()方法、语法和底层引擎。
- 一种单一的输出机制 python 2或python 3。
- 字符串格式化的配套对象fmt()。
- 高阶行格式,如行号, 内置缩进和换行。你可以得到实质性的 更好的输出 格式化几乎没有额外的代码。
- 用于常见格式项(如标题、水平)的便捷方法 分隔符和垂直空白。
- 简单的样式输出,包括ANSI颜色和用户定义的样式 以及文本转换。
- 超级重复模板/文本聚合器对象,易于构建, 阅读和书写多行文本。
今天试驾吧!见the full documentation at Read the Docs。