携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第21天,点击查看活动详情 >>
1 格式化输出
Python 输出值的方式有两种:表达式语句和 print 函数(文件对象的输出使用 write 方法,标准文件输出可以参考 sys.stdout ,详细文档:docs.python.org/zh-cn/3/faq…
如果我们想要将输出的值转成字符串,可以使用 repr() 或 str() 函数来实现,其中 repr() 函数产生一个解释器易读的表达形式,str() 函数返回一个用户易读的表达形式。
如果我们不只是想打印使用空格分隔的值,而是想对输出进行格式化控制,可以采用两种方式:一种是自己处理整个字符串,另一种是采用 str.format() 方式,下面介绍下 str.format() 的使用。
1)基本使用
>>> print('{}网址:"{}!"'.format('Python技术', 'www.justdopython.com'))
Python技术网址:"www.justdopython.com!"
括号及其里面的字符 (称作格式化字段) 将会被 format() 中的参数替换
2)在括号中的数字用于指向传入对象在 format() 中的位置
>>> print('{0} 和 {1}'.format('Hello', 'Python'))
Hello 和 Python
>>> print('{0} {1}'.format('Hello', 'Python'))
Hello Python
>>> print('{1} {0}'.format('Hello', 'Python'))
Python Hello
3)如果在 format() 中使用了关键字参数,那么它们的值会指向使用该名字的参数
>>> print('{name}网址:{site}'.format(name='Python技术', site='www.justdopython.com'))
Python技术网址:www.justdopython.com
4)位置及关键字参数可以任意的结合
>>> print('电商网站 {0}, {1}, {other}。'.format('淘宝', '京东', other='拼多多'))
电商网站 淘宝, 京东, 拼多多。
5)用 ** 标志将字典以关键字参数的方式传入
>>> "repr() shows quotes: {!a}; str() doesn't: {!s}".format('test1', 'test2')
"repr() shows quotes: 'test1'; str() doesn't: test2"
6)字段名后允许可选的 : 和格式指令
# 将 PI 转为三位精度
>>> import math
>>> print('The value of PI is approximately {0:.3f}.'.format(math.pi))
The value of PI is approximately 3.142.
7)在字段后的 : 后面加一个整数会限定该字段的最小宽度
>>> table = {'Sjoerd': 123, 'Jack': 456, 'Dcab': 789}
>>> for name, phone in table.items():print('{0:10} ==> {1:10d}'.format(name, phone))
Jack ==> 456
Dcab ==> 789
Sjoerd ==> 123
8)如果有个很长的格式化字符串,不想分割它可以传入一个字典,用中括号( [] )访问它的键;
>>> table = {'Sjoerd': 123, 'Jack': 456, 'Dcab': 789789789789}
>>> print('Jack: {0[Jack]:d}; Sjoerd: {0[Sjoerd]:d}; ' 'Dcab: {0[Dcab]:d}'.format(table))
Jack: 456; Sjoerd: 123; Dcab: 789789789789
还可以用 ** 标志将这个字典以关键字参数的方式传入。
>>> table = {'Sjoerd': 123, 'Jack': 456, 'Dcab': 789789789789}
>>> print('Jack: {Jack:d}; Sjoerd: {Sjoerd:d}; Dcab: {Dcab:d}'.format(**table))
Jack: 456; Sjoerd: 123; Dcab: 789789789789
2 读取键盘输入
Python 提供了 input() 内置函数从标准输入读入一行文本,默认的标准输入是键盘,input() 可以接收一个 Python 表达式作为输入,并将运算结果返回。示例如下:
>>> str = input("请输入:");
>>> print ("输入的内容是: ", str)
请输入:Hello Python
你输入的内容是: Hello Python