python中的*是什么意思,python中%的使用
从表面上看,python运算符似乎没有什么特别之处,以至于大多数人都认为它非常简单。真的是这样吗?让我们来了解一下!
在python中,有一个内置的操作%来格式化字符串,下面是%格式符的表达式:,.
%[(名称)][标志][宽度]。[精度]类型代码
参数解释:
(name)可选:用于选择指定的键。
标志可选:格式运算符帮助器
*:定义宽度或小数点精度。
-:用于左对齐
:在正数前面显示一个加号()。
>
#:在八进制数前面显示零(0),在十六进制前面显示"0x"或者"0X"(取决于用的是"x"还是"X")
0:显示的数字前面填充"0"而不是默认的空格
m.n:m 是显示的最小总宽度,n 是小数点后的位数(如果可用的话)
width 可选:占有宽度
.precision 可选:小数点后保留的位数
typecode 必选
C:转换成字符(ASCII 码值,或者长度为一的字符串)
R:优先用repr()函数进行字符串转换
S:优先用str()函数进行字符串转换
D 或i:转成有符号十进制数
U:转成无符号十进制数
O:转成无符号八进制数
x或X:转成无符号十六进制数(x / X 代表转换后的十六进制字符的大小写)
e 或E:转成科学计数法(e / E控制输出e / E)
f或F:转成浮点数(小数部分自然截断)
g 或G:%e和%f / %E和%F 的简写
%%:输出% (格式化字符串里面包括百分号,那么必须使用%%)
下面先看一个例子:
print('1:nameis%s,and%dyearsold!'%('Nike',18))
输出:
1:nameisNike,and18yearsold!
说明:在格式化字符串时,Python使用一个字符串作为模板,模板中有带有%的格式符,这些格式符对应后面跟着的一个元组(tuple)系列,每一个格式符对应元组中的一个元素值
下面以例子说明上面的各种符号含义:
num=100print("%dtohexis%#x"%(num,num))
输出:
100tohexis0x64print("%#09otohexis%#o"%(num,num))
输出:
0o0000144tohexis0o144
使用Name参数的例子(其实就是利用字典):
print("name%(name)s,%(age)dyears"%{"name":'Mike',"age":20})
输出:
nameMike,20yearsstudents=[{"name":"Wilber","age":27},{"name":"Will","age":28},{"name":"June","age":27}]
print("name:%10s,age:%10d"%(students[0]["name"],students[0]["age"]))
print("name:%-10s,age:%-10d"%(students[1]["name"],students[1]["age"]))
print("name:%*s,age:%0*d"%(10,students[2]["name"],10,students[2]["age"]))
输出:
name:Wilber,age:27name:Will,age:28
name:June,age:0000000027
大家可以细细品味其中微小的差别,如需了解更多python实用知识,点击进入PyThon学习网教学中心。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。