[Python3 填坑] 001 格式化符号 & 格式化操作符的辅助指令
1. print( 坑的信息 )
- 挖坑时间:2019/01/08
- 明细
| 坑的编码 | 内容 |
|---|---|
| Py004-6 | Python 格式化符号 & 举例 |
| Py004-7 | Python 格式化操作符的辅助指令 & 举例 |
2. 开始填坑
2.1 Python 格式化符号表
- 源于 C,很多编程语言都适用
| 符号 | 释义 |
|---|---|
| %c | 1) 格式化字符 2) c 仅小写 |
| %s | 格式化字符串 详见 [Python3] 004 字符串的基本使用 的 "4.2.1" |
| %d | 格式化整数 详见 [Python3] 004 字符串的基本使用 的 "4.2.2" |
| %o | 1) 格式化无符号八进制数 2) o 仅小写 |
| %x | 1) 格式化十六进制数 2) x 不区分大小写 |
| %f | 1) 格式化浮点数字,可指定小数点后的精度 2) 指定方式见 "2.2" 辅助指令表 |
| %e | 1) 用科学计数法格式化浮点数 2) e 不区分大小写 |
| %g | 1) 根据值的大小决定使用 %f 或 %e 2) g 不区分大小写 |
举例说明
(1) %c
# 例 1
>>> print('%C' % 97) # 此处 C 大写了
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: unsupported format character 'C' (0x43) at index 1
>>>
# 例 2
>>> print('%c' % 97) # 此处 c 为小写
a
>>>
(2) %s 与 %d
- 见 [Python3] 004 字符串的基本使用 的 "4.2"
(3) %o
# 例 3
>>> print("%d 的八进制为 %o" % (100, 100)) # o 若用大写,例 1 就是下场
100 的八进制为 144
>>>
(4) %x
# 例 4
>>> print("%d 的十六进制为 %x" % (100, 100))
100 的十六进制为 64
>>> print("%d 的十六进制为 %X" % (200, 200))
200 的十六进制为 C8
>>>
(5) %f
# 例 5
# 浮点数默认精确到小数点后 6 位
>>> print("%f" % 3.14) # 不够添零
3.140000
>>> print("%f" % 3.14159265) # 若超出,四舍五入精确到小数点后 6 位
3.141593
>>>
(6) %e
# 例 6
>>> print("一个天文单位 %fkm 用科学计数法表示为 %ekm" % (149597871, 149597871))
一个天文单位 149597871.000000km 用科学计数法表示为 1.495979e+08km
>>> print("如果你喜欢 E:%Ekm" % 149597871)
如果你喜欢 E:1.495979E+08km
>>>
(7) %g
# 例 7
>>> print("%g 这个数交给 Python" % 1.496)
1.496 这个数交给 Python
>>> print("%g 这个数也交给 Python" % 149597871)
1.49598e+08 这个数也交给 Python
>>>
2.2 Python 格式化操作符的辅助指令表
- 源于 C,很多编程语言都适用
| 符号 | 释义 |
|---|---|
| n1.n2 | 1) n1 表示显示的最小总宽度,小数点也算一位;若超出,则原样输出 2) n2 表示小数点后的位数 |
| - | 靠左输出 |
| + | 靠右输出(可省略不写) |
| # | 1) 八进制数前显示 0o 2) 十六进制数前显示 0x |
| 0 | 用于填充空格 |
举例说明
(1) n1.n2
# 例 8
# 浮点数默认精确到小数点后 6 位
# n1 所指位数,小数点也算一位
print("0000000000") # 作为位数参考
print("%6.3f" % 3.1) # 输出位数有多,添零
print("%7.3f" % 3.14159265) # 输出位数不够,四舍五入
print("%7.3e" % 3.14159265) # 科学计数法的 e 及 e 后字符不算位数
print("%7.3e" % 314.159265)
>>>
0000000000
3.100
3.142
3.142e+00
3.142e+02
# 例 9
# n1 可省
print("0000000000") # 作为位数参考
print("%.3f" % 3.1) # 省 n1,只需考虑要精确的位数,不够添零
print("%.3f" % 3.14159265) # 省 n1,只需考虑要精确的位数,多了就四舍五入
>>>
0000000000
3.100
3.142
# 例 10
# n2 可省,但不推荐
print("0000000000") # 作为位数参考
print("%5.3f" % 3.1)
print("%5.f" % 3.1) # 省 n2,不如用 %d
>>>
0000000000
3.100
3
(2) -
# 例 11
print("0000000000") # 作为位数参考
print("%6.2f" % 3.1)
print("%-6.2fA" % 3.1) # 靠左输出
>>>
0000000000
3.10
3.10 A
(3) +
# 例 12
print("0000000000") # 作为位数参考
print("%6.2f" % 3.1)
print("%+6.2f" % 3.1) # 靠右输出,但多一个 +
>>>
0000000000
3.10
+3.10
(4) #
# 例 13
print("%x" % 100) # 作为参考
print("%#x" % 100) # %#x 表示按十六进制的格式输出
print("%#X" % 100) # x 不区分大小写
print("%#o" % 100) # %#o 表示八进制,o 为小写字母,大写报错,类型同例1
>>>
64
0x64
0x64
0o144
(5) 0
# 例 14
print("0000000000") # 作为位数参考
print("%5d" % 3)
print("%05d" % 3)
>>>
0000000000
3
00003
倘若阁下发现在下错误之处,还请不吝赐教!谢谢!
[Python3 填坑] 001 格式化符号 & 格式化操作符的辅助指令的更多相关文章
- [Python3 填坑] 006 “杠零”,空字符的使用
目录 1. print( 坑的信息 ) 2. 开始填坑 2.1 \0 是空字符,输出时看不到它,但它占 1 个字符的长度 2.2 \0 "遇八进制失效" 2.3 \0 与 '' 不 ...
- [Python3 填坑] 004 关于八进制
目录 1. print( 坑的信息 ) 2. 开始填坑 2.1 问题的由来 2.2 问题的解决 2.2.1 先说结论 2.2.2 八进制的用途 2.2.3 少废话,上例子 1. print( 坑的信息 ...
- [Python3 填坑] 012 字典的遍历在 Python2 与 Python3 中区别
目录 1. print( 坑的信息 ) 2. 开始填坑 2.1 Python2 中字典的遍历 2.2 Python3 中字典的遍历 2.3 结论 1. print( 坑的信息 ) 挖坑时间:2019/ ...
- [Python3 填坑] 009 深拷贝与浅拷贝
目录 1. print( 坑的信息 ) 2. 开始填坑 2.1 Python3.7 官方文档 2.2 赋值.切片与 copy() 分析 分析 分析 分析 2.3 copy 模块 分析 分析 2.4 小 ...
- [Python3 填坑] 005 如何“响铃”
目录 1. print( 坑的信息 ) 2. 开始填坑 2.1 问题的由来 2.2 问题的解决 1. print( 坑的信息 ) 挖坑时间:2019/01/08 明细 坑的编码 内容 Py004-2 ...
- [Python3 填坑] 003 关键字?保留字?预留字?
目录 1. print( 坑的信息 ) 2. 开始填坑 2.1 问题的由来 2.2 网上搜索 2.3 结论 2.4 后记 1. print( 坑的信息 ) 挖坑时间:2019/01/04 明细 坑的编 ...
- [Python3 填坑] 018 组装类的几个例子
目录 1. print( 坑的信息 ) 2. 开始填坑 2.1 MetaClass 举例 2.2 type 举例 2.3 MetaClass 举例 1. print( 坑的信息 ) 挖坑时间:2019 ...
- [Python3 填坑] 017 实例方法、静态方法、类方法的区别
目录 1. print( 坑的信息 ) 2. 开始填坑 2.1 先上例子 2.2 分析 1. print( 坑的信息 ) 挖坑时间:2019/04/07 明细 坑的编码 内容 Py024-1 实例方法 ...
- [Python3 填坑] 016 对 __getattr__ 和 __setattr__ 举例
目录 1. print( 坑的信息 ) 2. 开始填坑 2.1 __getattr__ 2.2 __setattr__ 1. print( 坑的信息 ) 挖坑时间:2019/04/07 明细 坑的编码 ...
随机推荐
- CCPC-Wannafly Winter Camp Day1 爬爬爬山 (最短路)
题目描述 爬山是wlswls最喜欢的活动之一. 在一个神奇的世界里,一共有nn座山,mm条路. wlswls初始有kk点体力,在爬山的过程中,他所处的海拔每上升1m1m,体力会减11点,海拔每下降1m ...
- 特殊字符(包括emoji)梳理和UTF8编码解码原理(转)
转自:https://www.jianshu.com/p/57c27d67a8a8 背景知识 emoji表情符号,是20世纪90年代由NTT Docomo栗田穣崇(Shigetaka Kurit)创建 ...
- Spring Boot 之Profile
Profile Profile是Spring对不同环境提供不同配置功能的支持,可以通过激活.指定参数等方式快速切换环境. 1)多Profile文件 我们在主配置文件编写的时候,文件名可以是:appli ...
- ubuntu16.04 安装samba
安装samba 1.更新当前软件 sudo apt-get upgrade sudo apt-get update sudo apt-get dist-upgrade 2.执行 sudo apt-ge ...
- re模块下的的常用方法
引入模块: import re 1.查找findall 匹配所有,每一项都是列表中的一个元素 ret=re.findall("\d+","sjkhk172按实际花费9 ...
- iOS Core Image-----十行代码实现微信朋友圈模糊效果
昨天下午微信的朋友圈着实火了一把,在这之后好多程序员都通过抓包工具看到了原图,但是我却在想,网上说是在移动前端做到的那是怎么做到的呢,经过一些学习,终于掌握了一些Core Image的知识,做出了相应 ...
- Shell-03
Shell-03 编程原理 编程介绍 最开始的编程 机械码(16进制)—CPU会识别 计算机只能识别二进制指令 程序 = 指令 + 数据 驱动: 硬件默认是不能使用的 驱动程序----不同的厂家硬件设 ...
- Linux的学习:
查看端口: netstat -anop | grep 80 netstat -ntlp 先看看不带n的 再看看带n的 我们发现在local address 即主机地址这一栏中,如果没有带n选项,会将套 ...
- Navicat 出现的[Err] 1146 - Table 'performance_schema.session_status' doesn't exist已解决
[Err] 1146 - Table 'performance_schema.session_status' doesn't exist已解决 刚刚接触MySQL,就往数据库添加数据,就遇到这个问 ...
- 6.25考试整理:江城唱晚&&不老梦&&棠梨煎雪——题解
按照旧例,先安利一下主要作者:一扶苏一 以及扶苏一直挂念的——银临姐姐:银临_百度百科 (滑稽) 好哒,现在步入正题: 先看第一题: 题解: 在NOIP范围内,看到“求方案数”,就说明这个题是一个计数 ...