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和pyqt实现360的CLable控件
Feb 21 Python
python通过urllib2获取带有中文参数url内容的方法
Mar 13 Python
Python实现文件按照日期命名的方法
Jul 09 Python
Python的Flask开发框架简单上手笔记
Nov 16 Python
Python实现的摇骰子猜大小功能小游戏示例
Dec 18 Python
解决tensorflow模型参数保存和加载的问题
Jul 26 Python
浅谈PyQt5 的帮助文档查找方法,可以查看每个类的方法
Jun 25 Python
Python 在OpenCV里实现仿射变换—坐标变换效果
Aug 30 Python
Python的缺点和劣势分析
Nov 19 Python
python 控制台单行刷新,多行刷新实例
Feb 19 Python
Python GUI之tkinter窗口视窗教程大集合(推荐)
Oct 20 Python
利用Python过滤相似文本的简单方法示例
Feb 03 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
文章推荐系统(二)
2006/10/09 PHP
php5 mysql分页实例代码
2008/04/10 PHP
PHP中usort在值相同时改变原始位置问题的解决方法
2011/11/27 PHP
php curl模拟post提交数据示例
2013/12/31 PHP
php使用mysqli和pdo扩展,测试对比mysql数据库的执行效率完整示例
2019/05/09 PHP
jQuery 美元符冲突的解决方法
2010/03/28 Javascript
用JavaScript计算在UTF-8下存储字符串占用字节数
2013/08/08 Javascript
angularJS 入门基础
2015/02/09 Javascript
jQuery实现伪分页的方法分享
2016/02/17 Javascript
javascript每日必学之循环
2016/02/19 Javascript
JavaScript编码风格指南(中文版)
2016/08/26 Javascript
AngularJS获取json数据的方法详解
2017/05/27 Javascript
WdatePicker.js时间日期插件的使用方法
2017/07/26 Javascript
详解JS数组Reduce()方法详解及高级技巧
2017/08/18 Javascript
简单谈谈CommonsChunkPlugin抽取公共模块
2017/12/31 Javascript
vue通过style或者class改变样式的实例代码
2018/10/30 Javascript
JS 音频可视化插件Wavesurfer.js的使用教程
2018/10/31 Javascript
JS访问对象两种方式区别解析
2020/08/29 Javascript
在python中bool函数的取值方法
2018/11/01 Python
Python3 SSH远程连接服务器的方法示例
2018/12/29 Python
python 一个figure上显示多个图像的实例
2019/07/08 Python
numpy.ndarray 实现对特定行或列取值
2019/12/05 Python
python实现滑雪者小游戏
2020/02/22 Python
Python paramiko 模块浅谈与SSH主要功能模拟解析
2020/02/29 Python
Python的PIL库中getpixel方法的使用
2020/04/09 Python
pycharm最新激活码有效期至2100年(亲测可用)
2021/02/05 Python
中国最大的潮流商品购物网站:YOHO!BUY有货
2017/01/07 全球购物
EntityManager都有哪些方法
2013/11/01 面试题
介绍一下javax.servlet.Servlet接口及其主要方法
2015/11/30 面试题
六一儿童节活动策划方案
2014/01/27 职场文书
小学端午节活动方案
2014/03/13 职场文书
高等教育学专业自荐书
2014/06/17 职场文书
质量月活动总结
2014/08/26 职场文书
python如何进行基准测试
2021/04/26 Python
SQL实现LeetCode(175.联合两表)
2021/08/04 MySQL
Vue操作Storage本地化存储
2022/04/29 Vue.js