python内置format函数详细介绍

英文文档:

format(value[, format_spec])

convert a value to a “formatted” representation, as controlled by format_spec. the interpretation of format_spec will depend on the type of the value argument, however there is a standard formatting syntax that is used by most built-in types: format specification mini-language.

the default format_spec is an empty string which usually gives the same effect as calling str(value).

a call to format(value, format_spec) is translated to type(value).__format__(value, format_spec) which bypasses the instance dictionary when searching for the value’s __format__() method. a typeerror exception is raised if the method search reaches object and the format_spec is non-empty, or if either the format_spec or the return value are not strings.

说明:

  1. 函数功能将一个数值进行格式化显示。

  2. 如果参数format_spec未提供,则和调用str(value)效果相同,转换成字符串格式化。

>>> format(3.1415936)
‘3.1415936’
>>> str(3.1415926)
‘3.1415926’

  3. 对于不同的类型,参数format_spec可提供的值都不一样

#字符串可以提供的参数 ‘s’ none
>>> format(‘some string’,’s’)
‘some string’
>>> format(‘some string’)
‘some string’
#整形数值可以提供的参数有 ‘b’ ‘c’ ‘d’ ‘o’ ‘x’ ‘x’ ‘n’ none
>>> format(3,’b’) #转换成二进制
’11’
>>> format(97,’c’) #转换unicode成字符
‘a’
>>> format(11,’d’) #转换成10进制
’11’
>>> format(11,’o’) #转换成8进制
’13’
>>> format(11,’x’) #转换成16进制 小写字母表示
‘b’
>>> format(11,’x’) #转换成16进制 大写字母表示
‘b’
>>> format(11,’n’) #和d一样
’11’
>>> format(11) #默认和d一样
’11’
#浮点数可以提供的参数有 ‘e’ ‘e’ ‘f’ ‘f’ ‘g’ ‘g’ ‘n’ ‘%’ none
>>> format(314159267,’e’) #科学计数法,默认保留6位小数
‘3.141593e+08′
>>> format(314159267,’0.2e’) #科学计数法,指定保留2位小数
‘3.14e+08′
>>> format(314159267,’0.2e’) #科学计数法,指定保留2位小数,采用大写e表示
‘3.14e+08′
>>> format(314159267,’f’) #小数点计数法,默认保留6位小数
‘314159267.000000’
>>> format(3.14159267000,’f’) #小数点计数法,默认保留6位小数
‘3.141593’
>>> format(3.14159267000,’0.8f’) #小数点计数法,指定保留8位小数
‘3.14159267’
>>> format(3.14159267000,’0.10f’) #小数点计数法,指定保留10位小数
‘3.1415926700’
>>> format(3.14e+1000000,’f’) #小数点计数法,无穷大转换成大小字母
‘inf’
#g的格式化比较特殊,假设p为格式中指定的保留小数位数,先尝试采用科学计数法格式化,得到幂指数exp,如果-4> format(0.00003141566,’.1g’) #p=1,exp=-5 ==》 -4> format(0.00003141566,’.2g’) #p=1,exp=-5 ==》 -4> format(0.00003141566,’.3g’) #p=1,exp=-5 ==》 -4> format(0.00003141566,’.3g’) #p=1,exp=-5 ==》 -4> format(3.1415926777,’.1g’) #p=1,exp=0 ==》 -4> format(3.1415926777,’.2g’) #p=1,exp=0 ==》 -4> format(3.1415926777,’.3g’) #p=1,exp=0 ==》 -4> format(0.00003141566,’.1n’) #和g相同
‘3e-05′
>>> format(0.00003141566,’.3n’) #和g相同
‘3.14e-05’
>>> format(0.00003141566) #和g相同
‘3.141566e-05’

以上就是python内置format函数详细介绍的详细内容,更多请关注 第一php社区 其它相关文章!

Posted in 未分类