-
python进修笔记(三)
添加时间:2013-5-14 点击量:字符串操纵
字符串在任何一门说话都是一个重点,灵活应用可实现各类强大的功能,在python中,字符串也是如此,标准的序列操纵对字符串也应用,然则分片赋值不可,因为字符串是不成变的。
字符串的格局化:
字符串格局化应用字符串格局化操纵符%来实现,在%左侧放置一个字符串,右侧放置格局化的值。看下面这个简单的例子:
>>> format=Hello,%s,Im studying %s!
>>> values=(world,Python)
>>> print format % values
Hello,world,Im studying Python!重视:若是应用列表或者其他列表庖代元组,那么序列就会被申明为一个值,只有元组和字典和格局化一个以上的值。
%s标识表记标帜了须要插入转换值的地位,s默示会被转化为字符串,若是不是字符串,则会用str将其转换为字符串。别的,若是须要在格局化字符串里包含百分号,则必须应用%%。
若是须要格局化实数,用f申明符类型,同时供给精度;一个据点再加上保存的小数位数。因为格局化申明符老是以默示类型的字符停止,所以精度应当放在类型字符前面:
>>> format=PI with three decimals :%.3f
>>> math import pi
>>> print format % pi
PI with three decimals :3.142格局化操纵符的右操纵数可所以任何器材,若是是元组或者映射类型(字典),则字符串的格局化略有不合。例如,若是右操纵数是元组,则此中每一个I元素都邑被零丁格局化,每个值都须要一个对应的转换申明符。(重视:若是须要转换的元组作为转换默示的一项目组存在,那么必须将它用圆括号括起来)
>>> %s plus %s equals %s %(1,1,2)
1 plus 1 equals 2当然,字符串格局化还有很多,比如填充和字宽和精度等,这些带用到时再去查也不迟,下面是一个关于字符串格局化一个较综合的例子,包含字宽和对齐等:
width
=
input
(
Please input width:
)
price_width
=
10
item_width
=
width
-
price_width
header_format
=
%-s%s
format
=
%-s%.2f
print
=
width
print
header_format
%
(item_width,
Item
,price_width ,
Price
)
print
-
width
print
format
%
(item_width ,
Apples
,price_width ,
0.4
)
print
format
%
(item_width ,
Pears
,price_width ,
0.5
)
print
format
%
(item_width ,
Cantaloupes
,price_width ,
1.92
)
print
format
%
(item_width ,
Dried Apricots(16 oz.)
,price_width ,
8
)
print
format
%
(item_width ,
Prunes(4 lbs.)
,price_width ,
12
)
print
=
width
raw_input
(
enter any key to exit~~
)
原来,再大的房子,再大的床,没有相爱的人陪伴,都只是冰冷的物质。而如果身边有爱人陪伴,即使房子小,床小,也觉得无关紧要,因为这些物质上面有了爱的温度,成了家的元素。—— 何珞《婚房》#书摘#