在Python中,经常会用到格式化输出,例如,给定一个小数pi。
import numpy as np
print(np.pi)
输出:
3.141592653589793
我们需要将其保留两位小数输出,可以用format函数实现,代码如下。
print("Pi值:{:.2f}".format(np.pi))
输出:
Pi值:3.14
注意,花括号里的格式符为“:.2f”,前面有一个冒号。
这种用法叫作字符串格式化输出。
在Python中,格式化输出有format、f字符串和%这三种用法。
1、format函数format就是格式化的意思,例如,利用format做如下形式的输出。
print('大数据技术名词:{}和{}'.format('Hadoop', 'Spark'))
输出:
大数据技术名词:Hadoop和Spark
可以看到,format就是在字符串后面调用format函数,字符串中的花括号相当于占位符,format里的参数就是占位符要填充的内容。
我们还可以用数字索引来指定填充内容的顺序,例如
print('大数据技术名词:{1}和{0}'.format('Hadoop', 'Spark'))
输出:
大数据技术名词:Spark和Hadoop
以上代码中,数字0表示format中的第一个字符串,1表示第二个字符串。
也可以通过名称来指定占位符中的内容,代码如下。
print('网站名称:{name}, 网址:{site}'.format(name='Python', site='https://www.python.org/'))
输出:
网站名称:Python,网址:https://www.python.org/
以上代码中,name代表一个要填充的字符串,site代表另一个要填充的字符串。
2、f字符串(或f函数)format函数不够简洁,Python 3.6及之后的版本推出了f字符串或者叫f函数,例如
name = 'Python'
print(f'网站名称:{name}')
输出:
网站名称:Python
可以看到,f字符串用法非常简洁,只需要在字符串前面加上f,里面的花括号表示占位符。
又或者,可以这样用,一次性插入两个变量。
name='Python'; site='https://www.python.org/'
print(f'网站名称:{name},网址:{site}')
3、%格式化输出
除了以上两种用法,还可以用比较传统的%,例如通过%输出字符串、整数及小数。
print('网站名称:%s' % 'Python')
print('运算结果为:%d' % 100)
print('运算结果为:%.2f' % 3.14)
输出:
网站名称:Python
运算结果为:100
运算结果为:3.14
以上就是Python中格式化输出的三种用法。
关注我,学习更多干货!