Python通过format函数格式化显示值


Posted in Python onOctober 17, 2020

英文文档:

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<=exp<p,则采用小数计数法,并保留p-1-exp位小数,否则按小数计数法计数,并按p-1保留小数位数
>>> format(0.00003141566,'.1g') #p=1,exp=-5 ==》 -4<=exp<p不成立,按科学计数法计数,保留0位小数点
'3e-05'
>>> format(0.00003141566,'.2g') #p=1,exp=-5 ==》 -4<=exp<p不成立,按科学计数法计数,保留1位小数点
'3.1e-05'
>>> format(0.00003141566,'.3g') #p=1,exp=-5 ==》 -4<=exp<p不成立,按科学计数法计数,保留2位小数点
'3.14e-05'
>>> format(0.00003141566,'.3G') #p=1,exp=-5 ==》 -4<=exp<p不成立,按科学计数法计数,保留0位小数点,E使用大写
'3.14E-05'
>>> format(3.1415926777,'.1g') #p=1,exp=0 ==》 -4<=exp<p成立,按小数计数法计数,保留0位小数点
'3'
>>> format(3.1415926777,'.2g') #p=1,exp=0 ==》 -4<=exp<p成立,按小数计数法计数,保留1位小数点
'3.1'
>>> format(3.1415926777,'.3g') #p=1,exp=0 ==》 -4<=exp<p成立,按小数计数法计数,保留2位小数点
'3.14'
>>> format(0.00003141566,'.1n') #和g相同
'3e-05'
>>> format(0.00003141566,'.3n') #和g相同
'3.14e-05'
>>> format(0.00003141566) #和g相同
'3.141566e-05'

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python tempfile模块学习笔记(临时文件)
May 25 Python
用实例详解Python中的Django框架中prefetch_related()函数对数据库查询的优化
Apr 01 Python
Python中的getopt函数使用详解
Jul 28 Python
利用Python2下载单张图片与爬取网页图片实例代码
Dec 25 Python
Python 12306抢火车票脚本
Feb 07 Python
python格式化输出保留2位小数的实现方法
Jul 02 Python
ERLANG和PYTHON互通实现过程详解
Jul 05 Python
Python中IP地址处理IPy模块的方法
Aug 16 Python
利用Python绘制Jazz网络图的例子
Nov 21 Python
Python中sys模块功能与用法实例详解
Feb 26 Python
增大python字体的方法步骤
Jul 05 Python
去除python中的字符串空格的简单方法
Dec 22 Python
Python如何使用vars返回对象的属性列表
Oct 17 #Python
Python使用eval函数执行动态标表达式过程详解
Oct 17 #Python
Python基于locals返回作用域字典
Oct 17 #Python
Python classmethod装饰器原理及用法解析
Oct 17 #Python
Python基于staticmethod装饰器标示静态方法
Oct 17 #Python
详解python算法常用技巧与内置库
Oct 17 #Python
Python 操作SQLite数据库的示例
Oct 16 #Python
You might like
thinkphp中html:list标签传递多个参数实例
2014/10/30 PHP
jQuery hover 延时器实现代码
2011/03/12 Javascript
基于jquery的图片幻灯展示源码
2012/07/15 Javascript
浅谈JavaScript 框架分类
2014/11/10 Javascript
Underscore.js常用方法总结
2015/02/28 Javascript
json格式数据的添加,删除及排序方法
2016/01/21 Javascript
javascript中错误使用var造成undefined
2016/03/31 Javascript
jQuery遍历DOM元素与节点方法详解
2016/04/14 Javascript
Javascript中级语法快速入手
2016/07/30 Javascript
在JS中a标签加入单击事件屏蔽href跳转页面
2016/12/16 Javascript
解决vue 更改计算属性后select选中值不更改的问题
2018/03/02 Javascript
jQuery+koa2实现简单的Ajax请求的示例
2018/03/06 jQuery
微信小程序自定义组件实现tabs选项卡功能
2018/07/14 Javascript
微信小游戏之使用three.js 绘制一个旋转的三角形
2019/06/10 Javascript
echarts大屏字体自适应的方法步骤
2019/07/12 Javascript
Angular 多模块项目构建过程
2020/02/13 Javascript
js实现简单的点名器随机色实例代码
2020/09/20 Javascript
python通过exifread模块获得图片exif信息的方法
2015/03/16 Python
Django中的文件的上传的几种方式
2018/07/23 Python
Python函数装饰器原理与用法详解
2019/08/16 Python
如何基于Python实现自动扫雷
2020/01/06 Python
python用WxPython库实现无边框窗体和透明窗体实现方法详解
2020/02/21 Python
Windows环境下Python3.6.8 importError: DLLload failed:找不到指定的模块
2020/11/01 Python
Html5+CSS3+EL表达式问题小结
2020/12/19 HTML / CSS
令人啧啧称赞的经理推荐信
2013/11/07 职场文书
师范院校学生自荐信范文
2013/12/27 职场文书
大学生赌博检讨书
2014/09/22 职场文书
2014向国旗敬礼网上签名活动总结
2014/09/27 职场文书
职工食堂管理制度
2015/08/06 职场文书
少先队大队委竞选口号
2015/12/25 职场文书
计算机实训心得体会
2016/01/14 职场文书
强烈推荐:小学生:暑假作息时间表(值得收藏)
2019/07/09 职场文书
电子表的操作介绍说明书
2019/10/28 职场文书
只用Python就可以制作的简单词云
2021/06/07 Python
Python中的 Set 与 dict
2022/03/13 Python
Python实现批量将文件复制到新的目录中再修改名称
2022/04/12 Python