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 相关文章推荐
videocapture库制作python视频高速传输程序
Dec 23 Python
python的类变量和成员变量用法实例教程
Aug 25 Python
Python 稀疏矩阵-sparse 存储和转换
May 27 Python
Python实现列表删除重复元素的三种常用方法分析
Nov 24 Python
Python3 queue队列模块详细介绍
Jan 05 Python
matplotlib 输出保存指定尺寸的图片方法
May 24 Python
使用python爬取B站千万级数据
Jun 08 Python
查看python下OpenCV版本的方法
Aug 03 Python
Python操作rabbitMQ的示例代码
Mar 19 Python
python正则表达式 匹配反斜杠的操作方法
Aug 07 Python
python tkinter的消息框模块(messagebox,simpledialog)
Nov 07 Python
python调试工具Birdseye的使用教程
May 25 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结合jQuery.autocomplete插件实现输入自动完成提示的功能
2015/04/27 PHP
你应该知道PHP浮点数知识
2015/05/13 PHP
php实现的XML操作(读取)封装类完整实例
2017/02/23 PHP
JavaScipt中的Math.ceil() 、Math.floor() 、Math.round() 三个函数的理解
2010/04/29 Javascript
TBCompressor js代码压缩
2011/01/05 Javascript
JQuery.ajax传递中文参数的解决方法 推荐
2011/03/28 Javascript
在服务端(Page.Write)调用自定义的JS方法详解
2013/08/09 Javascript
jQuery获得包含margin的outerWidth和outerHeight的方法
2015/03/25 Javascript
网页中JS函数自动执行常用三种方法
2016/03/30 Javascript
全面解析bootstrap格子布局
2016/05/22 Javascript
AngularJS API之copy深拷贝详解及实例
2016/09/14 Javascript
bootstrap制作jsp页面(根据值让table显示选中)
2017/01/05 Javascript
ES6中的rest参数与扩展运算符详解
2017/07/18 Javascript
基于webpack 实用配置方法总结
2017/09/28 Javascript
jQuery实现html双向绑定功能示例
2017/10/09 jQuery
D3.js实现简洁实用的动态仪表盘的示例
2018/04/04 Javascript
JavaScript实现计算圆周率到小数点后100位的方法示例
2018/05/08 Javascript
vue移动端监听滚动条高度的实现方法
2018/09/03 Javascript
Nodejs实现多文件夹文件同步
2018/10/17 NodeJs
vue实现文字横向无缝走马灯组件效果的实例代码
2019/04/09 Javascript
jquery.validate自定义验证用法实例分析【成功提示与择要提示】
2020/06/06 jQuery
typescript配置alias的详细步骤
2020/08/12 Javascript
在pytorch中为Module和Tensor指定GPU的例子
2019/08/19 Python
python+selenium+PhantomJS抓取网页动态加载内容
2020/02/25 Python
Keras 快速解决OOM超内存的问题
2020/06/11 Python
Python如何重新加载模块
2020/07/29 Python
美国珠宝网上商店:Jeulia
2016/09/01 全球购物
瑜伽服装品牌:露露柠檬(lululemon athletica)
2017/06/04 全球购物
澳大利亚在线生活方式商店:Mytopia
2018/07/08 全球购物
教育实践活动对照检查材料
2014/09/23 职场文书
怎样写好工作计划
2019/04/10 职场文书
准备去美国留学,那么大学申请文书应该怎么写?
2019/08/12 职场文书
MATLAB 全景图切割及盒图显示的实现步骤
2021/05/14 Python
MySQL Router实现MySQL的读写分离的方法
2021/05/27 MySQL
十大最强水系宝可梦,最美宝可梦排第三,榜首大家最熟悉
2022/03/18 日漫
详解Mysq MVCC多版本的并发控制
2022/04/29 MySQL