零基础学python-7.7 字符串格式化方法(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 "<pyshell#2>", line 1, in <module>
    '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 "<pyshell#3>", line 1, in <module>
    'first={0[0]} third={0[1:3]}'.format (aList)
TypeError: list indices must be integers, not str
>>> 



 

就说到这里,谢谢大家

------------------------------------------------------------------

点击跳转零基础学python-目录


版权声明:本文为博主原创文章,未经博主允许不得转载。

posted on 2015-08-23 22:37  李灵晖  阅读(105)  评论(0编辑  收藏  举报