1.普通%格式化字符串
符 号 | 描述 |
---|---|
%c | 格式化字符及其ASCII码 |
%s | 格式化字符串 |
%d | 格式化整数 |
%u | 格式化无符号整型 |
%o | 格式化无符号八进制数 |
%x | 格式化无符号十六进制数 |
%X | 格式化无符号十六进制数(大写) |
%f | 格式化浮点数字,可指定小数点后的精度 |
%e | 用科学计数法格式化浮点数 |
%E | 作用同%e,用科学计数法格式化浮点数 |
%g | %f和%e的简写 |
%G | %f 和 %E 的简写 |
%p | 用十六进制数格式化变量的地址 |
用的最多的就是 %s %d %f,还有就是进制 %o %x %X
%d
age = 29print("my age is %d" %age)#my age is 29
%s
name = "happy"print("my name is %s" %name)#my name is happy
%f
print("%6.3f" % 2.3)#2.300print("%f" %2.3)#2.300000
%x %o
a=100print('数字100的8进制为:%o'%a)print('数字100的16进制为:%x'%a)数字100的8进制为:144数字100的16进制为:64
2. {}.format()格式字符串
#列表参数,{}里的事索引注意索引从0开始data=['happy',28,]print('这是另外一种字符串格式方式,我是 {0} 今年 {1}'.format('happy',28,))print('这是另外一种字符串格式方式,我是 {0} 今年 {1}'.format(*data))#字典形式参数,{}里面的是keydata = { 'name':'happy','age':28,'hobby':'eat'}print('我的名字是{name}年龄{age}爱好{hobby}'.format( name = 'happy',age=28,hobby='eat'))print('我的名字是{name}年龄{age}爱好{hobby}'.format(**data))#填充与格式化,print('{0:*>10}'.format(('abc')))#按照右边对齐,宽度为10填充*print('{0:#<20}'.format(('abc')))#按照左边边对齐,宽度为20填充#print('{0:@^30}'.format(('abc')))#按照右中间齐,宽度为30填充@结果:*******abcabc#################@@@@@@@@@@@@@abc@@@@@@@@@@@@@@#精度计算print('后面小数点个数{0:.3f}'.format(10)) #浮点数print('二进制{0:b}'.format(10)) #换算成二进制print('8进制{0:o}'.format(10)) #换算成八进制print('16进制{0:x}'.format(10)) #换算成小写的16进制print('16进制{0:X}'.format(10)) #换成大写16进制# 结果后面小数点个数10.000二进制10108进制1216进制a16进制A