1 字符串模板
1.1 简单的字符串模板
#设置字符串模板
sTemp="你好,我叫%s,我今年%d岁"
#使用元组为字符串模板赋值
sValue=("小明",6)
#使用%将字符串模板和值组合生产新的字符串
sStr=sTemp%sValueprint(sStr)
1.2 使用Template
#导入string中Template函数
from string import Template
#通过模板函数生成模板对象
temp=Template("你叫$xname,今年$xage岁?工资$xmoney钱?")
#通过模板对象中的 $xname关键字参数  进行赋值并返回整合后的字符串
sStr=temp.substitute(xname="张三",xage=8,xmoney=1080.56)print(sStr)
1.3 通过format方法简化模板赋值
#string的format方法
sStr="你好,你是{},你今年有{}了吧".format("留意到",60)
print(sStr)
#通过索引赋值
sStr="我{1}和你{0}说话呢,你咋不知声呢?".format("留意到","马达",)
print(sStr)
#通过命名参数赋值
sStr="你要疯啊,我{xname}一秒钟{xsal:0.2f}钱,你敢这样和我说话".format(xname="刘一刀",xsal=1500.581234);print(sStr)
1.4 python3.6支持变量同名替换
from math import pi
sStr=f"圆周率{pi}"print(sStr)
练习
1 sStr="{foo}  {}  {bar}  {}".format(1,2,bar=4,foo=3)
print(sStr)
2 sStr="{foo}  {1}  {bar}  {0}".format(1,2,bar=4,foo=3)
print(sStr)
3 mData=["one","two"]
sStr="hello  {xname[1]}".format(xname=mData)print(sStr)
1.5 字符串模式的格式化
格式化字符串!s对应str(),!r对应的repr(),!a对应的ascii()
sStr="{pi!s} {pi!r} {pi!a}".format(pi="π")
print(sStr)
1.6 字符串基本类型转换
sStr="你的工资{sal:f}".format(sal=1.123456789456)
print(sStr)
结果
你的工资1.123457
字符串格式设置中的类型说明符
b:将整数表示为二进制
c:将整数解读为Unicode
d:默认十进制
e:科学表示法表示小数(用e来表示指数)
E:与e相同
f: 将小数表示为定点数
F:与f相同
o:将整数表示为八进制数
s:对应字符串格式不变
x:对应十六进制
X:与x相同
1.7 宽度、精度和千位分隔符
宽度用于控制显示位数
sStr="{xnum:10}".format(xnum=3)
'         3'#默认右对齐
sStr="{xname:10}".format(xname="Yarn")
'Yarn      '#字符串默认左对齐
1.8 千分位符号 
sStr="salary:{:,}".format(12345678)
print(sStr)
结果
salary:12,345,678
1.9 符号、对齐和填充
在指定宽度和精度前添加一个标识(可以是0、正负号或空格)
使用0填充显示数字:
sStr="{:010.2f}".format(8.12345);
print(sStr);
结果
0000008.12
1.10 设置对齐方式
sStr="{0:<10.2f}\n {0:>10.2f}\n {0:^10.2f}".format(8.888);
print(sStr)
结果
8.89      
       8.89    8.89 
1.11 使用指定的字符填充
sStr="{:A^10.2}".format(6.5)
print(sStr)
1.12 使用=在正负号和数值之间分隔并对齐
sStr="{:=10.2f}".format(-5.123)
print(sStr)1.13 设置数值的进制
sStr="{0:#b}\n{0:#g}\n{0:#o}\n{0:#x}".format(88)
print(sStr)
2 字符串中的方法
2.1 find方法
在源字符串中查找目标字符串,返回索引位置,找不到返回-1
源字符串.find(目标字符串[,起始索引][,结束索引])
2.2 join方法
合并字符串序列
sStr=('1','2','3')
#使用+合并序列
ss='+'.join(sStr)
2.3 replace
s1="hello world"
s2=s1.replace('l','LA')
2.4 split方法
按指定的字符串拆分源字符串为列表
2.5 strip
删除指定字符串
s1=" hello world "
s2=s1.strip();
删除前后空格
可以指定删除的字符
s1="aabbcc"
s2=s1.strip("ab");print(s2)
结果
cc