首页 > 编程笔记

Python print()函数的用法

print() 函数是 Python 用来输出指定的字符串或数值到标准输出装置的函数,默认情况下输出到屏幕上。

print() 的正式语法格式如下。

print( 数据1[, 数据2,…, sep= 分隔字符, end= 结束字符])

对语法格式的说明:

以下示例示范了 3 种 print() 的语法的使用方式及输出结果:

>>> print("一元复始")
一元复始
>>> print("五福临门","十全十美",sep="#")
五福临门#十全十美
>>> print("五福临门","十全十美")
五福临门 十全十美
>>>

上述 3 种 print() 的语法的差异说明如下。

print() 函数也支持格式化功能,主要是由 “%” 字符与后面的格式化字符串来输出指定格式的变量或数值内容,语法如下。

print(" 数据" %( 参数列))

常用输出格式化符号说明如表 1 所示。

表1 格式化符号说明
格式化符号 说明
%s 字符串
%d 整数
%f 浮点数
%e 浮点数,指数e形式
%o 八进制整数
%x 十六进制整数

例如下面的代码:

height=178
print(" 小郭的身高:%d" % height)

输出结果:

小郭的身高:178


下面我们介绍一个实用的方法,即利用 format() 函数来进行格式化工作,这个函数以一对大括号 “{}” 来表示参数的位置,语法如下。

print( 字符串 .format( 参数列))

例如下面的代码:

print("{0} 今年 {1} 岁. ".format(" 王小明", 18))

其中 “{0}” 表示使用第一个自变量、“{1}” 表示使用第二个自变量,以此类推。如果 “{}” 内省略数字编号,则会按顺序填入。

也可以使用自变量名称来取代对应的自变量,例如下面的代码:

print("{writer} 每年赚 {money} 版税. ".format(writer =" 陈大春", money=600000))

直接在数字编号后面加上冒号“:”可以指定参数格式,例如下面的代码:

print('{0:.2f}'.format(3.14159)) #3.14

上述代码表示第一个自变量取小数点后两位。

接下来我们看几个例子。

【示例1】代码如下:

num=1.732659
print("num= {:.3f}".format(num)) # num= 1.733

{:.3f} 表示要将数值格式化成小数点后 3 位。

【示例2】代码如下:

num=1.732659
print("num= {:7.3f}".format(num)) #num= 1.733

其中 {:7.3f} 表示数值是总长度为 7 的浮点数,且保留小数点后 3 位,此处的小数点也在总长度内。从执行结果来看,总长度为 7,数值前会补空白。

【示例3】利用 format() 函数来格式化输出字符串及整数。代码如下:
university=" 全优职能专科学校"
year=142
print("{} 已办校 {} 年" .format (university, year))
输出结果:

全优职能专科学校 已办校 142 年

在上例中可以看到字符串中的 “{}” 符号是用来表示要写入参数的位置的。例如,要输出的 university 及 year 变量在字符串中就必须有相对应的 “{}” 符号来配合,以告知系统将这两个变量的值写在此处。

【示例4】利用各种不同的 format() 函数来格式化输出字符串及整数。代码如下:
num1=9.86353
print("num1= {:.3f}".format(num1))
num2=524.12345
print("num2= {:12.3f}".format(num2))
company=" 智能AI 科技股份有限公司"
year=18
print("{} 已设立公司 {} 年" .format (company, year))
print("{0} 成立至今已 {1} 年".format(company, year))
输出结果:

num1= 9.864
num2=      524.123
智能AI 科技股份有限公司 已设立公司 18 年
智能AI 科技股份有限公司 成立至今已 18 年

程序解说:
【示例5】使用格式化输出方式,并通过栏宽设定分别输出不同的整数、字符串及浮点数结果。代码如下:
name1=" 多益题库大全"
name2=" 小学单字入门手册"
name3=" 英语初级及中级合集"
price1=500
price2=45
price3=125.85
print("%5s 商品价格为 %4d 元" % (name1, price1))
print("%5s 商品价格为 %4d 元" % (name2, price2))
print("%5s 商品价格为 %5.2f 元" % (name3, price3))
输出结果:

多益题库大全 商品价格为  500 元
小学单字入门手册 商品价格为   45 元
英语初级及中级合集 商品价格为 125.85 元

程序解说:

优秀文章