Python小白的第一篇文章,介绍下print()的三种主要写法:
槽函数格式化输出
类C(语言)格式化输出
f格式化字符串输出 (Python3.6+版本)
print()标准声明
print(*objects, sep = " ", end = "\n", file = sys.stdout, flush = False)
# 实例
print("https://www","baidu","com",sep = ".",end = "/")
# 输出: https://www.baidu.com/
# *objects的用法
## 槽函数格式化输出
print("输出的字符串{变量:格式要求}".format(变量名,...))
# 注意是用'.'连接,用槽格式和format()方法将变量和字符串结合到一起.
## 类C格式化输出
print("%[格式占位符]"% (内容,...)) # 和C语言类似的语法(不同的是用'%'连接而不是',')
## f格式化字符串输出 Python3.6+
print(f"输出的字符串{变量:格式要求}")
参数解释
*objects:可以一次输出多个对象.用","分隔对象
sep:用来间隔多个对象,默认值为" "
end:用来设定以什么为结尾,默认值为"\n"
file:要写入的文件对象,默认值"sys.stdout"即为控制台.
-
flush(Python3.3+):True:流将会被强制刷新,实时输出.比如在通过print()写入文件的过程中,如果flush=false,则直到关闭(.close())文件后,文件的内容才会更新;如果flush = True,文件的内容是实时更新的.
- 通过测试得出结论:使用flush强制刷新流能够稍微提高程序的书写效率.
字符串格式化符号
符号 | 描述 |
---|---|
%c | 格式化字符及其ASCII码 |
%s | 格式化字符串 |
%d | 格式化整数 |
%o | 格式化无符号八进制数 |
%x(%X) | 格式化无符号十六进制数(大写) |
%e(%E) | 用科学计数法格式化浮点数(大写) |
%g(%G) | %f和%e(%E)的通用写法,显示由系统选择 |
%p | 用十六进制格式化变量的地址 |
槽函数格式化输出指令
print('{a:.2f},{b:.2f},{c:.2f}'.format(b = 2,c = 1,a = 0)) #前面可加变量区分
# 0.00,2.00,1.00
print("{0[0]}{1[1]}{2[1]}".format('AB','ab','αβ') )
# Abβ
{}内写法解析
- {变量名1 : 空位替代符号=''2 对齐符号='<'3 输出字符长度4 . 保留数字5}
语法元素分析 | 描述 |
---|---|
变量名 | 可以是匿名,也可以取名,实例见上; 也可以使用索引,format内变量从左到右依次排序,由','分隔,通过x[y]的方式访问第x+1个变量中的第y位的值. |
空位替代符号 | 配合输出字符长度格式化输出,默认为空 |
对齐符号 | <是左对齐(默认) >是右对齐 ^是居中对齐 |
输出字符长度 | 和类c格式化输出指令中的"m"相同 |
保留数字 | 数字x后面不加f或F表示保留有效数字x位 数字x后面加f或F则表示保留x位小数. |
类C格式化输出指令
print("%*.*f"%(10,3,3.1415926)) #格式化操作辅助指令——'*'的用法
# 输出: 3.142
符号 | 描述 |
---|---|
m.n | m是显示的最小总宽度,n是保留的小数位数 |
* | 定义宽度或小数点精度,从后面的元组中读取字段宽度或精度 |
- | 左对齐 |
+ | 在正数前面显示'+' |
<sp> | 在正数前面显示空格 |
# | 在八进制数前面显示0 十六进制前面显示"0x"或"0X" |
0 | 显示的数字前面填充'0'而不是默认的空格 |
(var) | 映射变量(字典参数) |
f格式化字符串输出
{}内部的语法和槽函数格式化输出指令完全相同.是Python3.6+的功能,简化代码写法.
另有r和b对字符串的操作,不过和print()输出无关.
参考:上述内容有部分知识点参考https://blog.csdn.net/weixin_44451032/article/details/96591540.
如果print()还有其他的使用方法,欢迎大家评论讨论,疑问之处下方留言,错误之处敬请斧正.