>백엔드 개발 >파이썬 튜토리얼 >Python 내장 형식 기능에 대한 자세한 소개

Python 내장 형식 기능에 대한 자세한 소개

高洛峰
高洛峰원래의
2017-03-21 11:15:532102검색

英文文档:

format([, format_spec])

format_spec에 의해 제어되는 "형식화된" 표현으로 변환합니다. format_spec의 해석은 value 인수의 유형에 따라 다르지만 대부분의 내장 유형에서 사용되는 표준 형식 지정 구문인 형식 사양 미니 언어가 있습니다.

기본 format_spec은 일반적으로 str(value)을 호출하는 것과 동일한 효과를 제공하는 빈 문자열입니다.

<span class="pre">format(value, <span class="pre">format_spec)<code class="docutils literal"><span class="pre">format(value, <span class="pre">format_spec)</span></span><span class="pre">type(value).__format__(value, <span class="pre">format_spec)</span></span><span class="pre">로 번역됩니다. type(value).__format__(value, <span class="pre">format_spec)<code class="xref py py-meth docutils literal">__format__()TypeError 이는 값의 object 메서드를 검색할 때 인스턴스 사전을 우회합니다. 메소드 검색이 에 도달하고 format_spec이 비어 있지 않거나 format_spec

또는 반환 값이 문자열이 아닌 경우

예외가 발생합니다.

 

说明:

  1.函数功能将一个数值进行格式化显示。

  2.如果参数format_spec未提供,则和调사용str(value)效果상동,转换成字符串格式化。

>>> format(3.1415936)
&#39;3.1415936&#39;
>>> str(3.1415926)
&#39;3.1415926&#39;
  3.对于不同 类型,参数format_spec可提供的值itu不一样
#字符串可以提供的参数 &#39;s&#39; None
>>> format(&#39;some string&#39;,&#39;s&#39;)
&#39;some string&#39;
>>> format(&#39;some string&#39;)
&#39;some string&#39;

#整形数值可以提供的参数有 &#39;b&#39; &#39;c&#39; &#39;d&#39; &#39;o&#39; &#39;x&#39; &#39;X&#39; &#39;n&#39; None
>>> format(3,&#39;b&#39;) #转换成二进制
&#39;11&#39;
>>> format(97,&#39;c&#39;) #转换unicode成字符
&#39;a&#39;
>>> format(11,&#39;d&#39;) #转换成10进制
&#39;11&#39;
>>> format(11,&#39;o&#39;) #转换成8进制
&#39;13&#39;
>>> format(11,&#39;x&#39;) #转换成16进制 小写字母表示
&#39;b&#39;
>>> format(11,&#39;X&#39;) #转换成16进制 大写字母表示
&#39;B&#39;
>>> format(11,&#39;n&#39;) #和d一样
&#39;11&#39;
>>> format(11) #默认和d一样
&#39;11&#39;

#浮点数可以提供的参数有 &#39;e&#39; &#39;E&#39; &#39;f&#39; &#39;F&#39; &#39;g&#39; &#39;G&#39; &#39;n&#39; &#39;%&#39; None
>>> format(314159267,&#39;e&#39;) #科学计数法,默认保留6位小数
&#39;3.141593e+08&#39;
>>> format(314159267,&#39;0.2e&#39;) #科学计数法,指定保留2位小数
&#39;3.14e+08&#39;
>>> format(314159267,&#39;0.2E&#39;) #科学计数法,指定保留2位小数,采用大写E表示
&#39;3.14E+08&#39;
>>> format(314159267,&#39;f&#39;) #小数点计数法,默认保留6位小数
&#39;314159267.000000&#39;
>>> format(3.14159267000,&#39;f&#39;) #小数点计数法,默认保留6位小数
&#39;3.141593&#39;
>>> format(3.14159267000,&#39;0.8f&#39;) #小数点计数法,指定保留8位小数
&#39;3.14159267&#39;
>>> format(3.14159267000,&#39;0.10f&#39;) #小数点计数法,指定保留10位小数
&#39;3.1415926700&#39;
>>> format(3.14e+1000000,&#39;F&#39;)  #小数点计数法,无穷大转换成大小字母
&#39;INF&#39;

#g的格式化比较特殊,假设p为格式中指定的保留小数位数,先尝试采用科学计数法格式化,得到幂指数exp,如果-4<=exp<p,则采用小数计数法,并保留p-1-exp位小数,否则按小数计数法计数,并按p-1保留小数位数
>>> format(0.00003141566,&#39;.1g&#39;) #p=1,exp=-5 ==》 -4<=exp<p不成立,按科学计数法计数,保留0位小数点
&#39;3e-05&#39;
>>> format(0.00003141566,&#39;.2g&#39;) #p=1,exp=-5 ==》 -4<=exp<p不成立,按科学计数法计数,保留1位小数点
&#39;3.1e-05&#39;
>>> format(0.00003141566,&#39;.3g&#39;) #p=1,exp=-5 ==》 -4<=exp<p不成立,按科学计数法计数,保留2位小数点
&#39;3.14e-05&#39;
>>> format(0.00003141566,&#39;.3G&#39;) #p=1,exp=-5 ==》 -4<=exp<p不成立,按科学计数法计数,保留0位小数点,E使用大写
&#39;3.14E-05&#39;
>>> format(3.1415926777,&#39;.1g&#39;) #p=1,exp=0 ==》 -4<=exp<p成立,按小数计数法计数,保留0位小数点
&#39;3&#39;
>>> format(3.1415926777,&#39;.2g&#39;) #p=1,exp=0 ==》 -4<=exp<p成立,按小数计数法计数,保留1位小数点
&#39;3.1&#39;
>>> format(3.1415926777,&#39;.3g&#39;) #p=1,exp=0 ==》 -4<=exp<p成立,按小数计数法计数,保留2位小数点
&#39;3.14&#39;
>>> format(0.00003141566,&#39;.1n&#39;) #和g相同
&#39;3e-05&#39;
>>> format(0.00003141566,&#39;.3n&#39;) #和g相同
&#39;3.14e-05&#39;
>>> format(0.00003141566) #和g相同
&#39;3.141566e-05&#39;

위 내용은 Python 내장 형식 기능에 대한 자세한 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.