Python之输入和输出 - 在线留言 - 长春市隆兴伟业物流有限公司
现在的位置: 主页 > 在线留言 > 文章正文
Python之输入和输出
作者:长春市隆兴伟业物流有限公司 来源:www.lxwywl.com 发布时间:2017-09-02 11:47:52
Python之输入和输出

Python学习笔记之八输入和输出:展现程序的输出有多种方法,可以打印成我们可读的形式,也可以写入到文件以便后面使用。

格式化输出

输出值的方法有几种:
1. 表达式语句(有些表达式会返会一个结果,就是输出值)
2. print()函数
3. 文件对象的write() 方法,标准输出文件可以引用sys.stdout ,这在Python的库参考手册中有。
设置字符串输出格式的方法有两种:
第一种是使用字符串切片和连接操作以及字符串本身的一些方法自己做字符串处理,并按照特定的格式输出;
第二种方法是使用 str.format() 方法
string 模块包含一个Template 类,提供另外一种向字符串代入值的方法。
Python 通过repr() 和str() 函数可以将任何值转换为字符串
str() 函数的用意在于返回对于我们更加友好的表现形式,而repr() 的用意在于生成对于解释器可读的表现形式,如果转换不成功将会引发SyntaxError 异常。对于我们如果没有特别的表现形式,str()和repr() 将返回相同的值(一般情况下返回的值都是相同的)。许多值,例如数字或者列表和字典这样的结构,使用这两个中的任意一个都具有相同的表示形式。字符串会相对特殊一些,有两种不同的表示形式:
一些例子:

>>> s = 'Hello, world.' >>> str(s) 'Hello, world.' >>> repr(s) "'Hello, world.'" >>> str(1/7) '0.14285714285714285' >>> x = 10 * 3.25 >>> y = 200 * 200 >>> s = 'The value of x is ' + repr(x) + ', and y is ' + repr(y) + '...' >>> print(s) The value of x is 32.5, and y is 40000... >>> # The repr() of a string adds string quotes and backslashes: ... hello = 'hello, world\n' >>> hellos = repr(hello) >>> print(hellos) 'hello, world\n' >>> # The argument to repr() may be any Python object: ... repr((x, y, ('spam', 'eggs'))) "(32.5, 40000, ('spam', 'eggs'))"

这里用两种方法输出平方和立方表:

>>> for x in range(1, 11): ... print(repr(x).rjust(2), repr(x*x).rjust(3), end=' ') ... # Note use of 'end' on previous line ... print(repr(x*x*x).rjust(4)) ... 1 1 1 2 4 8 3 9 27 4 16 64 5 25 125 6 36 216 7 49 343 8 64 512 9 81 729 10 100 1000 >>> for x in range(1, 11): ... print('{0:2d} {1:3d} {2:4d}'.format(x, x*x, x*x*x)) ... 1 1 1 2 4 8 3 9 27 4 16 64 5 25 125 6 36 216 7 49 343 8 64 512 9 81 729 10 100 1000

(注意:在第一个示例中,每列之间的一个空格由print() 自动添加:print() 函数总会在它的参数之间添加空格.)
上面的例子演示了字符串对象的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'

如果字符串长度的值小于zfill() 参数的值,那么就会在数值字符串前面补零,如果字符串长度的值大于或等于zfill() 参数的值,那么它就保持原样。
str.format()方法的基本用法如下所示:

>>> print('We are the {} who say "{}!"'.format('knights', 'Ni')) We are the knights who say "Ni!"

花括号及其中的字符(称为格式字段)将被替换为传递给str.format()方法的对象。可以用括号中的数字指定传递给str.format()方法的对象的位置。

>>> print('{0} and {1}'.format('spam', 'eggs')) spam and eggs >>> print('{1} and {0}'.format('spam', 'eggs')) eggs and spam

如果str.format()方法使用关键字参数,那么将通过参数名引用它们的值。

>>> print('This {food} is {adjective}.'.format( ... food='spam', adjective='absolutely horrible')) This spam is absolutely horrible.

位置参数和关键字参数可以随意组合:

>>> print('The story of {0}, {1}, and {other}.'.format('Bill', 'Manfred', other='Georg')) The story of Bill, Manfred, and Georg.

企业建站2800元起,携手武汉肥猫科技,做一个有见地的颜值派!更多优惠请戳:鄂州网站制作 http://ezhou.666rj.com


  • 上一篇:卡汀财经分享—CFA已过前辈经验分享
  • 下一篇:最后一页
  • 
    COPYRIGHT © 2015 长春市隆兴伟业物流有限公司 ALL RIGHTS RESERVED.
    本站所有原创信息,未经许可请勿任意转载或复制使用 网站地图 技术支持:肥猫科技
    精彩专题:网站建设
    购买本站友情链接、项目合作请联系客服QQ:2500-38-100