python之字符串类型的格式化

Posted 江武

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python之字符串类型的格式化相关的知识,希望对你有一定的参考价值。

python之字符串类型的格式化

要点:python字符串通过format()方法进行格式化处理。(Python语言同时支持两种字符串格式化方法,一种类似C语言中printf()函数的格式化方法,支持该方法主要考虑与大批C语言程序员编程习惯相一致;另一种采用专门的str.format()格式化方法。由于Python中更为接近自然语言的复杂数据类型(如列表和字典等)无法通过类C的格式化方法很好表达,Python 已经不在后续版本中改进C风格格式化方法。因此,Python 语言将主要采用format()方法进行字符串格式化。)

字符串format()方法的基础使用格式是:

<模板字符串>. format (<逗号分隔的参数>)    示例如下:

 

 

 

 在这里我们可以看出,如果大括号中指定了使用参数的序号,按照序号对应参数也替换  *参数从0开始编号

另外,大括号{}本身也是字符串的一部分,如果需要输出{}则需要注意

 

 通俗点讲,由上示例可以看出{1}输出:1        {{{1}}}输出:{1}     

format()方法中模板字符串的槽除了包括参数序号,还可以包括格式控制信息。此时,槽的内部样式如下:
{<参数序号>: <格 式控制标记>}
<,内容左对齐
>,内容右对齐(默认)
=,内容右对齐,将符号放置在填充字符的左侧,且只对数字类型有效。 即使:符号+填充物+数字
^,内容居中对齐

(1)num = "{0:.2f}".format(123456.789132)

         print(num)

         # 123456.79

 

(2)num = "{0:b},{0:c},{0:d},{0:o},{0:x},{0:X}".format(42500)             # {0:b}二进制格式,{0:c}Unicode编码形式,{0:d}十进制表示形式,{0:o}八进制,{0:x}十六进制,                                                                                                                  {0:X}大写的十六进制

         print(num)

         # 1010011000000100,ꘄ,42500,123004,a604,A604

 

(3)num = "{0:e},{0:E},{0:F},{0:%}".format(45.6)               # {0:e}科学计数法e表示,{0:E}科学计数法E表示,{0:F}通常非科学计数法

         print(num)

         # 4.560000e+02,4.560000E+02,456.000000,45600.000000%



 

以上是关于python之字符串类型的格式化的主要内容,如果未能解决你的问题,请参考以下文章

Python 数据类型之字符串

Python数据结构之字符串类型(str)

Python3之基本数据类型,基本运算

Python 基础

python之字符串格式化

Python基础-python数据类型之字符串