到目前为止我们遇到过两种输出值的方法:
表达式语句和print语句。
(第三个方式是使用文件对象的write()方法;
标准输出文件可以引用 sys.stdout。详细内容参见库参考手册。
Python 有方法将任何值转换为字符串:将它传递给repr()或str()函数。
str()函数的用意在于返回人类可读的表现形式,而repr()的用意在于生成解释器可读的表现形式(如果没有等价的语法将会引发SyntaxError异常)。
字符串对象的str.rjust()方法,它通过在左侧填充空格使字符串在给定宽度的列右对齐。类似的方法还有str.ljust()和str.center()。
这些方法不会输出任何内容,它们只返回新的字符串。如果输入的字符串太长,它们不会截断字符串,而是保持原样返回;这会使列的格式变得混乱,但是通常好于另外一种选择,那可能是一个错误的值。(如果你真的想要截断,可以加上一个切片操作,例如x.ljust(n)[:n]。)
另外一种方法 str.zfill(),它向数值字符串左侧填充零。该函数可以正确识别正负号:
>>> '12'.zfill(5)
'00012'
>>> '-3.14'.zfill(7)
'-003.14'
>>> '3.14159265359'.zfill(5)
'3.14159265359'
str.format()方法的基本用法如下所示:
>>> print 'We are the {} who say "{}!"'.format('knights', 'Ni')
We are the knights who say "Ni!"