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实现获取某天是某个月中的第几周
Feb 11 Python
Python中使用haystack实现django全文检索搜索引擎功能
Aug 26 Python
centos 安装python3.6环境并配置虚拟环境的详细教程
Feb 22 Python
Python  unittest单元测试框架的使用
Sep 08 Python
python调用opencv实现猫脸检测功能
Jan 15 Python
pyqt5中QThread在使用时出现重复emit的实例
Jun 21 Python
使用APScheduler3.0.1 实现定时任务的方法
Jul 22 Python
python Manager 之dict KeyError问题的解决
Dec 21 Python
flask利用flask-wtf验证上传的文件的方法
Jan 17 Python
Python如何使用队列方式实现多线程爬虫
May 12 Python
python excel多行合并的方法
Dec 09 Python
python使用smtplib模块发送邮件
Dec 17 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
php实现仿写CodeIgniter的购物车类
2015/07/29 PHP
ThinkPHP表单数据智能写入create方法实例分析
2015/09/27 PHP
通过javascript获取iframe里的值示例代码
2013/06/24 Javascript
JS限制Textarea文本域字符个数的具体实现
2013/08/02 Javascript
变量声明时命名与变量作为对象属性时命名的区别解析
2013/12/06 Javascript
JS动态修改表格cellPadding和cellSpacing的方法
2015/03/31 Javascript
node.js抓取并分析网页内容有无特殊内容的js文件
2015/11/17 Javascript
基于Jquery和CSS3制作数字时钟附源码下载(CSS3篇)
2015/11/24 Javascript
javascript 继承学习心得总结
2016/03/17 Javascript
JS查找字符串中出现次数最多的字符
2016/09/05 Javascript
bootstrap fileinput组件整合Springmvc上传图片到本地磁盘
2017/05/11 Javascript
详解前后端分离之VueJS前端
2017/05/24 Javascript
JavaScript设计模式之工厂模式简单实例教程
2018/07/03 Javascript
深入理解es6块级作用域的使用
2019/03/28 Javascript
vue 表单之通过v-model绑定单选按钮radio
2019/05/13 Javascript
微信小程序云开发实现增删改查功能
2019/05/17 Javascript
Element图表初始大小及窗口自适应实现
2020/07/10 Javascript
详谈Object.defineProperty 及实现数据双向绑定
2020/07/18 Javascript
python学生管理系统代码实现
2020/04/05 Python
Django框架中间件(Middleware)用法实例分析
2019/05/24 Python
Python程序包的构建和发布过程示例详解
2019/06/09 Python
Python3 串口接收与发送16进制数据包的实例
2019/06/12 Python
Python3运算符常见用法分析
2020/02/14 Python
Tensorflow中的降维函数tf.reduce_*使用总结
2020/04/20 Python
用python对oracle进行简单性能测试
2020/12/05 Python
AmazeUI 折叠面板的实现代码
2020/08/17 HTML / CSS
Dr. Martens马汀博士法国官网:马丁靴鼻祖
2020/01/15 全球购物
东方通信股份有限公司VC面试题
2014/08/27 面试题
法务专员岗位职责
2014/01/02 职场文书
采购部经理岗位职责
2014/02/10 职场文书
大学生标准自荐书
2014/06/15 职场文书
机关职员工作检讨书
2014/10/23 职场文书
2014年加油站工作总结
2014/12/04 职场文书
2014会计年终工作总结
2014/12/20 职场文书
优秀乡村医生事迹材料(2016精选版)
2016/02/29 职场文书
机关单位2016年创先争优活动总结
2016/04/05 职场文书