Python语法分析之字符串格式化

  

  
  

应该有>   #编码Python3.7   print(“这是% s博客写在% d % % % 2 d % % % d % 2 d: % d: % 06.2 f '   % (TinyDolphin, 2019 5, 31日,9日,30日,22.3333))   #这是TinyDolphin博客写在31 09:30:022.33 2019% - 05%      打印(“标题=%(标题),作者=%(名字)'   %{“名称”:“TinyDolphin”,“标题”:“Python语法浅析:字符串格式化'})   # title=Python语法浅析:字符串格式化,作者=TinyDolphin      打印(' % 0 *。* f ' % (6 2 2.345))   # 002.35      

printf语法
  

  

针对这种格式化操作,重要知识点如下:
  

  

1,针对这些转换标记字符,必须按照以下顺序:
  

  
  

,,,%,比;(名字)——比;' # ',' - ',' 0 ',' + ',' '——比;m。n | m——比;d s, r f

     

2,常用转换类型:
  

  
      <李> % s格式化字符串(str()函数)   <李> % r格式化字符串repr()(函数)   <李>,% d格式化整数   <李> % f格式化浮点数字,可指定小数点后的精度   
  

3,常用的转换标记字符:
  

  
      <李>,-用做左对齐李   <李> +在正数前面显示加号(+)   <李> #在八进制数前面显示零(“0”),在十六进制前面显示“0 x”或者“0 x”(取决于用的是“x”还是“x”)   <李> 0显示的数字前面填充“0”,而不是默认的空格李   <李> % % %的输出一个单一的‘%’李   <李>,m。n表示米是显示的最小总宽度,n是小数点后的位数   <李>,*定义宽度或者小数点精度(用在不能预先指定梅西百货(m.n:行情的值)   <李>,(var)映射变量(字典参数)   
  

2,字符串的方式(str.format()格式)
  

  

Python2.6开始,新增了一种格式化字符串的函数str.format(),它增强了字符串格式化的功能,比如:支持位置映射,关键字映射,对象属性映射,下标映射等多种方式
  

  

基本语法是通过{}和:来代替以前的%,例如:“% 03.2 f”被改写成“{:03.2 f}”。
  

  

两个格式化方法:
  

  
  

str。格式(* args, * * kwargs)
  ,,字符串的格式化操作。
  ,,str包含字符串字面值和{}括起来的替换域。
  ,,每个替换域:位置参数的索引或关键字参数的名称
  ,,
  str.format_map(映射)
  ,,类似于str.foramt(* *映射)
  ,,不同之处:映射会被直接使用而不是复制到一个dict。
  

     

PS: Python存在内置函数格式(价值,format_spec):会转换成类型(值)。格式(价值,format_spec)
  

  


  

  

1,按位置访问参数
  

        “{0}- {1}{2}”。格式(a, b, c) #“a - b - c”   “{}- {}{}”。格式(a, b, c) #“a - b - c”   {2},{1},{0}”。格式(a, b, c) #“c-b-a”   {2},{1},{0}的.format (* ' abc ') #“c-b-a”      args=[a, b, c的)   {2},{1},{0}的.format (* args) #“c-b-a”      “{0}- {1}{0}”。格式(* [“abc”,“def”]) #“abc-def-abc”      

2,按名称访问参数
  

        {一}- {b}。格式(a=1, b=' 2 ') #“1 - 2”      kwargs={' a ': ' 1 ', ' b ': ' 2 '}   {一}- {b}的.format (* * kwargs) #“1 - 2”      

3,访问参数的属性
  

        类:   def __init__(自我,x, y):   自我。x,自我。y=x, y   def __str__(自我):   返回的点({自我。x}, {self.y})“.format(自我=自我)      str(点(3,4))#的点(3,4)      

4,访问参数的项
  

        点=(3、5)   Y ' X: {0 [0]}: {0 [1]}’.format(点)#“X: 3 Y: 5”      

5,替代% s和r % (!, !r)
  

        “str()={!年代};repr ()={! r}’。格式(' a ', ' a ') #”str ()=a;repr ()=a "      对

6日齐文本以及制定宽度(:& lt;: ^:祝辞)
  

        {:& lt; 20}。格式(“左对齐”)#“左对齐”   {:在20}。格式(“右对齐”)#“右对齐”   {:^ 20}.format(集中)#“中心”   #使用‘*’作为填充字符   {:* ^ 20}.format(集中)#“* * * * * *为* * * * * *”      

7,替代f % +, % % f - f和以及指定正负号(:+,-,:)

Python语法分析之字符串格式化