上QQ阅读APP看书,第一时间看更新
3.2 字符串类型
字符串,例如s='床前明月光',是字符的序列表示,单行字符串可以用一对单引号('…')或一对双引号("…")表示。多行字符串可以用一对三单引号('''…''')或者一对三双引号("""…""")表示,示例代码如下:
#//第3章/3.1.py print('单引号里可以用"双引号"。') print("双引号里可以用'单引号'。") print() s='''床前明月光 疑是地上霜 ''' print(s)
运行结果如下:
单引号里可以用"双引号"。 双引号里可以用'单引号'。 床前明月光 疑是地上霜
如果在字符中使用特殊字符,则必须用反斜杠“\”与后面相邻的一个字符共同表示新含义,反斜杠“\”称为转义字符,如“\”在行尾表示续行、\n表示换行、\\表示反斜杠、\'表示单引号、\"表示双引号等,示例代码如下:
print('床前明月光\n疑是地上霜') print("双引号里通常不能再用双引号,\n\"除非转义符上场\"")
运行结果如下:
床前明月光 疑是地上霜 双引号里通常不能再用双引号, "除非转义符上场"
1.字符串的索引和切片
字符串的序列有两种形式,从左到右的序列为正向序列,从右到左的序列为反向序列,它们的关系如下:
P y t h o n 0 1 2 3 4 5 -6-5-4-3-2-1
对其中一个元素的访问称为索引,示例代码如下:
s='Python' print(s[0]) print('Python'[-6])
运行结果如下:
P P
对其中多个元素的访问称为切片,示例代码如下:
s='Python' print(s[0:3]) #不包含右边界 print(s[-6:-3]) #从左向右切片 print(s[0:5:2]) #每两个取一个
运行结果如下:
Pyt Pyt Pto
s[0:5:2]的第1个参数0表示从0索引位置开始,第2个参数5表示到第5个索引位置结束,第3个参数2表示每两个取一个,如果改为3,则表示每3个取一个。不包含结束索引位置(右边界)。
2.在字符串中加入变量
在字符串中加入变量,可以用'...'.format()进行控制,示例代码如下:
#//第3章/3.2.py x='上海' y='海上' print('{}自来水来自{}'.format(x,y)) #字符串中的变量用{}占位,()内按顺序给出 print('{1}自来水来自{0}'.format(x,y)) #用变量索引指定变量,与字符串索引相同 print('{0}自来水来自{0}'.format(x)) #{}与变量数不一致,用变量索引指定变量 print('{0}自来{{水}}来自{0}'.format(x)) #两对{{}}输出一对{}
运行结果如下:
上海自来水来自海上 海上自来水来自上海 上海自来水来自上海 上海自来{水}来自上海
3.字符串的格式化
format()命令还可以对字符串进行格式化,方法是在变量占位符{}内用<填充><对齐><宽度><,><.精度><类型>共6个字段进行控制,示例代码如下:
#//第3章/3.3.py x='天安门' #x长5个字符,如果不足5个,则用*填充,^表示居中,<表示左对齐,>表示右对齐 print('我爱北京{:*^5}'.format(x)) #x长5个字符,如果不足5个,则默认用空格填充,左对齐 print('我爱北京{:5}'.format(x)) #变量长2个字符,如果不足,则用0填充,左对齐 print('{:02}.jpg'.format(1)) #逗号分隔数字 print('我要学习Python,每天只能学习{:,}秒'.format(24*3600)) #缺省时,数字不分隔 print('我要学习Python,每天只能学习{}秒'.format(24*3600)) #.2表示小数长度为2位 print('我要学习Python,每天只能学习{:.2}秒'.format(3.1415926)) #.2%表示用百分号表示小数,保留两位小数,e和E表示科学记数法,f表示浮点数 print('我要学习Python,每天只能学习{:.2%}秒'.format(3.1415926)) #b、o、d、x分别表示二进制、八进制、十进制、十六进制 print('我要学习Python,每天只能学习{:b}秒'.format(24))
运行结果如下:
我爱北京*天安门* 我爱北京天安门 01.jpg 我要学习Python,每天只能学习86,400秒 我要学习Python,每天只能学习86400秒 我要学习Python,每天只能学习3.1秒 我要学习Python,每天只能学习314.16%秒 我要学习Python,每天只能学习11000秒
综上所述,format()命令的完整格式为"{变量索引号:变量格式控制}".format(变量0,变量1…)。
六字段记忆口诀:田队长逗点泪,田队长说了个笑话逗得大家留下点眼泪。田谐音“填”,队谐音“对”,长同“长”,逗对“,”,点对“.”,泪对“类”。