python格式符

# 格式化输出
name = "sz"
age = 18
# 我的名字是xxx,年龄是xxx
print("我的名字是%s,年龄是%d" % (name, age))


# %[(name)] [flags] [width] [,precision] typecode
# []:中括号扩起来的代表是可以省略的
# (name):表示根据指定的名称(key),查找对应的值,格式化到字符串当中。
mathScore = 59
englishScore = 58
print("我的数学分数是:%d,英文的分数是:%d" % (mathScore, englishScore))
# 如果要交换两个学科的分数
# 直接交换
print("我的数学分数是:%d,英文的分数是:%d" % (englishScore, mathScore))
# 借助(name),用法%(name)d
print("我的数学分数是:%(ms)d,英文的分数是:%(es)d" % ({"ms": mathScore, "es": englishScore}))


# 借助flags,表示对齐的方式。默认右对齐
# 空:表示右对齐
# -:表示左对齐
# 空格:''为一个空格,表示在正数的左侧填充一个空格,从而与负数对齐。
# 0:表示使用0填充
# width,表示占用的宽度。
print("%d" % mathScore)
# 当输出时间的时候,我们先设置宽度为2,然后在宽度前面添加0作为填充。如果数字宽度是1位,则用0填充,如果数字宽度是2位,则不进行填充
min = 5
sec = 8
print("%02d:%02d" % (min, sec))
# .precision表示的是数字小数点后的精度。当数字为整数的时候,使用%d,当数字是小数的时候,使用%f,精确到2位就使用.2,精确到10位就使用.10,当时字符的时候使用%s。
score = 59.9
print("%.10f" % score)

# typecode

1.数值

注意:二进制是0b开头,八进制是0o开头,十六进制是0x开头

i/d:将整数、浮点数转换成十进制表示,并将其格式化到指定位置。

o:将整数、浮点数转换成八进制表示,并将其格式化到指定位置。

x:将整数、浮点数转换成十六进制表示,并将其格式化到指定位置。

e:将整数、浮点数转换成科学计数法表示,并将其格式化到指定位置(小写e)。

E:将整数、浮点数转换成科学计数法表示,并将其格式化到指定位置(小写E)。

f:将整数、浮点数转换成浮点数表示,并将其格式化到指定位置(默认小数点后保留6位)。

F:将整数、浮点数转换成浮点数表示,并将其格式化到指定位置(默认小数点后保留6位)。

g:自动调整将整数、浮点数转换成浮点型或科学计数法表示(超过6位使用科学计数法),并将其格式化到指定位置(如果是科学计数这是e)

G:自动调整将整数、浮点数转换成浮点型或科学计数法表示(超过6位使用科学计数法),并将其格式化到指定位置(如果是科学计数这是E)

2.字符串

s:获取传入对象的_str_方法的返回值,并将其格式化到指定位置。

r:获取传入对象的_repr_方法的返回值,并将其格式化到指定位置。

c:整数:将数字转换成其Unicode对应的,10进制范围0<=i<1114111(python27只支持0-255);字符:将字符添加到指定位置。

3.特殊

%:当字符串中存在格式化标志时,需要用%%表示一个百分号。

4.注意

python中百分号格式化是不存在自动将整数转换成二进制表示的方式。

%b是错误的





阅读更多
上一篇python输出
下一篇公司的三天展会耽误了学习罪过罪过!
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭