关于Python字符串运算符详细说明
【1】+运算符
格式要求:字符串变量或字符串+字符串变量或字符串
功能:它是将两个或者多个字符串拼接在一起成为
一个新的字符串。
例如:a=“I love”, b=“my motherland”
则当进行 print(a+b)时
输出:I lovemymotherland
【2】*星号运算符
格式要求:字符串变量或字符串*次数
功能:将给定的字符串按给定的次数重复生成新的字符串
例如:a=“abc ”,则print(a*3)输出“abcabcabc”共出现三次而成为一个新的字符串。
【3】[]运算符
格式要求:字符串变量名或字符串[正整数或负整数]
功能:取字符串中指定序号上的字符。
注意事项:
- 字符串的正序号是从字符串左边以0开始直到字符串长度减1,超过最大正序号,则产生越界错误。
- 负序号是从字符串右边第一个字符以-1计数开始到最左边第一个字符以“负的字符串长度值”计数而结束。
- 如果给定的负序号的绝对值恰好等于字符串长度,则取字符串的第一个字符。
- 如果负序号的绝对值大于字符串长度,视为越界错误。
例如:a=“abcdefghijklmnopqrstuvwxyz”,其中lenth(a)=26
Print(a[3])输出:d print(a[0])输出:a
Print(a[25])输出:z print(a[26])越界错误
Print(a[-1])输出:z print(a[-26])输出:a
Print(a[-27])越界错误。
【4】[:]运算符
字符串与正反序号示意图:
格式要求:字符串变量或字符串[n:m]
功能:取从给定的序号n开始到第m个字符为止中间的字符组成新的字符串。
注意事项:(1)n和m可以取正序或反序序号
(2)无论取什么值,n和m两点形成的区域必须是右向即m点必须落在n点的后面。n>0时包含n所处的字符,n<0时不包含n所处的字符;m>0不包含m点处的字符,m<0包含m处的字符。
例如:a="ABCDEFGHIJKLMN"
print(a[10:12])输出KL(m>0不包含12,n>0包含10)
print(a[2:-8])输出CDEF(m<0,包含m)
print(a[-5:12])输出JKL(n<0不包括n,m>0不包括m)
print(a[9:12])输出JKL
print(a[-2:13])输出M
print(a[-13:12])输出BCDEFGHIJKL
print(a[-13:-3])输出BCDEFGHIJK
(3)如果n和m均省略,则取整过字符串
Print(a[:])输出ABCDEFGHIJKLMN
(4)如果省略前面的数,则从第一个字符开始到后面参数指定位置的所有字符
例如:print(a[:12])输出ABCDEFGHIJKL
print(a[:-12])输出AB
- 如果省略后面的数,则从n指向的位置直到字符串尾所有的字符。n>0包含n处的字符,n<0不包含n处的字符。
Print(a[5:])输出FGHIJKLMN(n>0包含n处字符)
Print(a[-5:])JKLMN(n<0不包含n处字符)
【5】[::]运算符
格式: 字符串或字符串变量[起点序号:终点序号:±步长值]
功能:从起点序号开始按步长值取字符直到终点序号止。其中步长值为正时,从左向右取,步长值为负时,由右向左取。
注意事项:
起点与终点值的大小决定步长的正负号。
- 当起点与终点同为正且起点小于终点值时,步长取正。
- 当起点与终点同为正且起点大于终站值时,步长取负。
- 当起点与终点同为负且起点值大于终点值时,步长取负。
- 当起点与终点同为负且起点值小于终点值时,步长取正。
- 当起点与终点异号时,如果起点的绝对值小于终点的绝对值时,步长用负号;如果起点的绝对值大小终点绝对值时,步长用正号。
例如:a="ABCDEFGHIJKLMN"
print(a[1:12:2])
print(a[12:1:-2])
print(a[-1:-12:-2])
print(a[-12:-1:2])
print(a[5:-12:-2])
print(a[5:-1:2])
print(a[-5:-1:2])
print(a[-5:-13:-2])