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

 更新时间:2020年10月17日 15:44:00   作者:lincappu  
这篇文章主要介绍了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<=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的Twisted框架上手前所必须了解的异步编程思想

    Python的Twisted框架上手前所必须了解的异步编程思想

    Twisted是Python世界中人气最高的framework之一,异步的工作模式使其名扬天下,这里为大家总结了Python的Twisted框架上手前所必须了解的异步编程思想,需要的朋友可以参考下
    2016-05-05
  • python中的hashlib模块使用实例

    python中的hashlib模块使用实例

    这篇文章主要介绍了python中的hashlib模块使用实例,hashlib是一个提供字符串加密功能的模块,包含MD5和SHA的算法,MD5和SHA是摘要算法,文中以实例代码讲解hashlib模块的基本用法,需要的朋友可以参考下
    2023-08-08
  • Python中tkinter开发的常用29种功能用法总结

    Python中tkinter开发的常用29种功能用法总结

    tkinter(Tk interface)是Python的标准GUl库,支持跨平台的GUl程序开发,本文为大家整理了tkinter开发时常用的29种功能用法,希望对大家有所帮助
    2023-05-05
  • Pytorch中关于F.normalize计算理解

    Pytorch中关于F.normalize计算理解

    这篇文章主要介绍了Pytorch中关于F.normalize计算理解,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-02-02
  • Python使用pip安装pySerial串口通讯模块

    Python使用pip安装pySerial串口通讯模块

    这篇文章主要为大家详细介绍了Python使用pip安装pySerial串口通讯模块,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-04-04
  • Python中find函数的详细使用方法

    Python中find函数的详细使用方法

    在Python中find()函数用于检测字符串中是否包含子字符串sub,如果指定start(开始)和end(结束)范围,则检查是否包含在指定范围内,这篇文章主要给大家介绍了关于Python中find函数的详细使用方法,需要的朋友可以参考下
    2023-05-05
  • python中使用Celery容联云异步发送验证码功能

    python中使用Celery容联云异步发送验证码功能

    Celery 是一个 基于python开发的分布式异步消息任务队列,通过它可以轻松的实现任务的异步处理,本文重点给大家介绍使用Celery容联云异步发送验证码功能,感兴趣的朋友一起看看吧
    2021-09-09
  • Python中字典的setdefault()方法教程

    Python中字典的setdefault()方法教程

    在学习python字典操作方法时,感觉setdefault()方法,比字典的其它基本操作方法更难理解的同学比较多,所以想着总结以下,下面这篇文章主要给大家介绍了Python中字典的setdefault()方法,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-02-02
  • Django的基本运用之Django垃圾分类详解

    Django的基本运用之Django垃圾分类详解

    大家都知道Django 是一个由 Python 编写的一个开放源代码的 Web 应用框架。接下来通过本文给大家介绍Django的基本运用之Django垃圾分类详解,感兴趣的朋友一起看看吧
    2021-09-09
  • Python实现Linux的find命令实例分享

    Python实现Linux的find命令实例分享

    本文给大家分享的是使用python简单实现模拟linux的find命令的实例代码,推荐给大家,希望大家能够喜欢
    2017-06-06

最新评论