python--字符串格式化,python字符串处理,python的字符串
python--字符串格式化,python字符串处理,python的字符串
python的字符串格式化有两种方式:百分号方式、format方式。百分号方式相对来说比较老,而format方式则是比较先进的方式。
1)百分号格式
语法:
%[(name)][flags][width].[precision]typecode
name:--可选,用于选择指定的key
flags: --可选,可供选择的值有:
+:--右对齐,正数前加正号,负数前加负号
-:--左对齐,正数前无符号,负数前加负号
空格:--右对齐,正数前加空格,负数前加负号
0:--右对齐,正数前无符号,负数前加负号,用0填充空白处
width:--可选,占有宽度
precision:--可选,小数点后保留的位数
typecode:--必选,可供选择的值有:
%s 字符串 (采用str()的显示)
%r 字符串 (采用repr()的显示)
%c 单个字符
%b 二进制整数
%d 十进制整数
%i 十进制整数
%o 八进制整数
%x 十六进制整数
%e 指数 (基底写为e)
%E 指数 (基底写为E)
%f 浮点数
%F 浮点数,与上相同
%g 指数(e)或浮点数 (根据显示长度)
%G 指数(E)或浮点数 (根据显示长度)
%% 表示一个字符"%"
注意:python中百分号格式化是不存在自动将整数转换成二制表示的方式
常用格式化示例:
1 str1 = "I am learning %s" % "python" 2 3 str2 = "my name is %s , age %d" %("yusheng_liang", 20) 4 5 str3 = "my name is %(name)s , age %(age)d" %{"name": "yusheng_liang", "age": 20} 6 7 str4 = "precent %.2f" % 99.97654 8 9 str5 = "I am %(qq).2f" %{"qq": 123.45678}10 11 str6 = "I am %(qq).2f %%" %{"qq": 123.45678}12 13 14 print("str1:", str1)15 print("str2:", str2)16 print("str3:", str3)17 print("str4:", str4)18 print("str5:", str5)19 print("str6:", str6)View Code
示例结果:
2)format方式
语法:
[[fill]align][sign][#][0][width][,][.precision][type]
fill:--可选,空白处填充的字符
align:--可选,对齐方式(需配合width使用)
<内容左对齐
>:内容右对齐(默认)
=:内容右对齐,将符号放置在填充字符的左侧,且只对数字类型有效。即:符号+填充物+数字
^:内容居中
sign:--可选,有无符号数字
+:正号加正,负号加负
-:正号不变,负号加负
空格:正号空格,负号加负
#:--可选,对于二进制、八进制、十六进制,如果加上#,会显示0b/0o/0x,否则不显示
,:--可选,为数字洄分隔符,如:1,000,000
width:--可选,格式化位所占宽度
.precision:--可选,小数位保留精度
type:--可选,格式化类型
对于整数类型,输出格式包括6 种:
b: 输出整数的二进制方式;
c: 输出整数对应的 Unicode 字符;
d: 输出整数的十进制方式;
o: 输出整数的八进制方式;
x: 输出整数的小写十六进制方式;
X: 输出整数的大写十六进制方式;
对于浮点数类型,输出格式包括4 种:
e: 输出浮点数对应的小写字母 e 的指数形式;
E: 输出浮点数对应的大写字母 E 的指数形式;
f: 输出浮点数的标准浮点形式;
%: 输出浮点数的百分形式。
常用格式化示例:
1 str1 = "I am {}, age {}".format("yusheng_liang", 20) 2 str2 = "I am {}, age {}".format(*["yusheng_liang", 20]) 3 str3 = "I am {0}, age {1}".format("yusheng_liang", 20) 4 str4 = "I am {name}, age {age}".format(name = "yusheng_liang", age = 20) 5 str5 = "I am {name}, age {age}".format(**{"name": "yusheng_liang", "age": 20}) #以字典的方式提供数据 6 str6 = "I am {0[0]}, age {0[1]}, set {1[2]}".format([1, 2, 3], [11, 22, 33]) 7 str7 = "I am {:s}, age {:d}, money {:f}".format("yusheng_liang", 20, 5000.23) 8 str8 = "I am {:s}, age {:d}".format("yusheng_liang", 20) 9 str9 = "I am {name:s}, age {age:d}".format(name = "yusheng_liang", age = 20)10 str10 = "I am {name:s}, age {age:d}".format(**{"name": "yusheng_liang", "age": 20})11 str11 = "number: {:b}, {:o}, {:d}, {:x}, {:X}, {:%}".format(15, 15, 15, 15, 15, 15, 15.456, 2)12 13 14 print("str1:", str1)15 print("str2:", str2)16 print("str3:", str3)17 print("str4:", str4)18 print("str5:", str5)19 print("str6:", str6)20 print("str7:", str7)21 print("str8:", str8)22 print("str9:", str9)23 print("str10:", str10)24 print("str11:", str11)View Code
示例结果:
python--字符串格式化
相关内容
- python中文件操作,python打开文件并写入,1.创建和打开文
- #5 Python变量与输入输出,,前言学习一门编程语言
- python——关于简单爬取博客园班级成员发的博文的题目
- unittest执行脚本的几个方法(python+selenium),pythonunit
- 解读python中SocketServer源码,python优秀源码, 再看继承
- python基础-面向对象opp,python面向对象,上述是实例化对
- Python之路--文件操作,Python文件,内容概要文件读写模式
- 一键打造vim ide 支持python golang shell等高级特性,python
- 第一个Python程序,什么是程序,首先创建一个.py文
- python1.0-----turtle模块,pythonturtle,turtle:绘图模
评论关闭