7. python 字符串格式化方法(1)

7. python 字符串格式化方法(1

承接上一章节,我们这一节来说说字符串格式化的另一种方法,就是调用format()

  >>> template='{0},{1} and {2}' 
 
>>> template.format ('a','b','c'

 
'a,b and c'
 
 
>>> template='{name1},{name2} and {name3}'
 
 
>>> template.format (name1='a',name2='b',name3='c'

 
'a,b and c'
 
 
>>> template='{name1},{0} and {name2}'
 
 
>>> template.format ('a',name1='b',name2='c'

 
'b,a and c'
 
 
>>>  

这里根据上面的例子说明一下

1.替换的位置可以使用下标的来标记

2.替换的位置可以使用名称来替换

下面我们来说说,在方法里面添加属性

  >>>import sys 
 
>>> 'my {1[spam]} runs {0.platform}'.format(sys,{'spam'

                          
'laptop'
}) 
 
'my laptop runs win32'
 
 
>>>  

  >>> 'my {config[spam]} runs {sys.platform}'.format(sys=sys,config={'spam':'laptop'}) 
 
'my laptop runs win32'
 
 
>>>  

上面两个例子里面,第一处读取了字符串,第二处读取sys里面的platform属性

下面再举一个例子,说明在表达式里面使用偏移量

  >>> aList=list('abcde'
 
>>>
aList 
  [
'a', 'b', 'c', 'd', 'e'

 
>>> 'first={0[0]} third={0[2]}'
.format (aList) 
 
'first=a third=c'
 
 
>>>  

注意:在使用偏移量的时候只能够是正整数,不能够使用负数,不能够使用代表区间正整数

  >>> aList=list('abcde'
   
 
>>>
aList 
  [
'a', 'b', 'c', 'd', 'e'

 
>>> 'first={0[0]} third={0[-1]}'
.format (aList) 
  Traceback (most recent call last): 
    File
"", line 1, in
  
     
'first={0[0]} third={0[-1]}'
.format (aList) 
 
TypeError: list indices must be integers, not
str 
 
>>> 'first={0[0]} third={0[1:3]}'
.format (aList) 
  Traceback (most recent call last): 
    File
"", line 1, in
  
     
'first={0[0]} third={0[1:3]}'
.format (aList) 
 
TypeError: list indices must be integers, not
str 
 
>>>  

原文地址:https://www.cnblogs.com/quanweiru/p/8358859.html