python输出百分号_python中的%是什么?怎么用?

3481110349cf06f43fa06727083ab342.png

表面上看关于python的运算符,好像并没有什么特别的,以至于大部分人都觉得非常简单,事实真的如此嘛?大家来一探究竟吧!

在python中,内置有对字符串进行格式化的操作%,下面是%格式符的表达式:

%[(name)][flags][width].[precision]typecode

参数解释:

(name) 可选:用于选择指定的key

flags 可选:格式化操作符辅助符

*:定义宽度或者小数点精度

-:用做左对齐

+:在正数前面显示加号(+)

#:在八进制数前面显示零(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:name is %s,and %d years old!'%('Nike',18))

输出:1:name is Nike,and 18 years old!

说明:在格式化字符串时,Python使用一个字符串作为模板,模板中有带有%的格式符,这些格式符对应后面跟着的一个元组(tuple)系列,每一个格式符对应元组中的一个元素值

下面以例子说明上面的各种符号含义:

num=100
print("%d to hex is %#x" %(num,num))

输出:

100 to hex is 0x64
print("%#09o to hex is %#o" %(num,num))

输出:

0o0000144 to hex is 0o144

使用Name参数的例子(其实就是利用字典):

print("name %(name)s,%(age)d years" % {"name":'Mike',"age":20})

输出:

name Mike,20 years
students = [{"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: 27
name: Will , age: 28
name: June, age: 0000000027

大家可以细细品味其中微小的差别,如需了解更多python实用知识,点击进入

Python学习网 - python视频教程免费在线学习​www.py.cn
d2ee328ab2b3a3104392cd6eba99fcf3.png

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值