1.获取字符
1.1获取单个字符
1)语法
字符串[下标] - 获取指定下标对应的字符
2)说明
字符串 - 可以是字符串值、字符串变量或者结果是字符串的表达式
[] - 固定写法
下标 -下标索引:字符串一旦确定了,那么字符串中的每个字符的位置就确定了,每个字符都会对应固定的下标来表示在字符串中的位置。
下标的值有两种:0 ~ 字符串长度-1;-1 ~ -字符串长度
下标0对应的是第一个字符;下标-1对应最后一个字符
print("====================获取单个字符====================")
print("abc12"[2])
str1 = "hello"
print(str1[-1])
# print(str1[-6]) # IndenxError:string index out of range
# print(str1[10]) # IndenxError:string index out of range
1.2获取部分字符(字符串切片)
1)语法1
字符串[开始下标:结束下标:步长] - 从开始下标开始获取,每次增加步长取下一个字符,直接获取到结束下标前为止
2)说明
字符串 - 字符串值或者字符串变量
[] - 固定写法
开始下标,结束下标 - 下标值
步长 - 整数
3)注意
a.结束下标对应的字符永远取不到
b.当步长为正,开始下标到结束下标从前往后取,这个时候开始下标对应的值必须在结束下标对应的字符的前面;否则取到的是空串
当步长为负,开始下标到结束下标从后往前取,这个时候开始下标对应的字符必须在结束下标对应的字符的后面;否则取到的是空串
str2 = "hello python"
print(str2[0:4:1]) # hell
print(str2[1:4:2]) # el
print("===:",str2[-1:4:1]) #空串
print(str2[-1:4:-1]) # nohtyp+
print(str2[3:6:1])
print(str2[3:-1:1])
print(str2[3:1:1]) # 空串:""
print(str2[-1:0:-1]) # nohtyp+0lle
print(str2[-1:-100:-1]) # nohtyp+0lleh
1.3获取部分字符
1)省略下标:步长为1
字符串[开始下标:结束下标] - 从开始下标到结束下标前,从前往后一个一个的取
2)省略开始下标
字符串[:结束下标:步长] / 字符串[:结束下标]
步长为正:从第一个字符开始取;步长为负,从最后一个字符往前取
3)省略结束下标
字符串[开始下标::步长] / 字符串[开始下标:]
步长为正,从前往后取到最后一个字符;步长为负,从后往前取到第一个字符
4)省略下标
字符串[::步长] / 字符串[:]
str3 = "abc123"
print(str3[1:4]) # bc1
print(str[1:4]) # ""
# 省略开始下标
print(str3[:-1]) #abc12
print(str3[:2:-1]) #321
# 省略结束下标
print(str3[0:]) #abc123
print(str3[3::-1]) #1cba
print(str3[:2:])
# 省略下标
print(str3[:]) #abc123
print(str3[::-1]) # 321cba
3.遍历字符串
3.1直接遍历拿到每个字符
for 变量 in 字符串:
循环体
循环过程中变量取到的就是字符串中的每个字符
print("==============遍历字符串==================")
for x in "hello world":
print(x)
print("========")
for item in "hello world"[::-1]:
print(item)
3.2 通过遍历下标遍历字符串
补充:len(字符串) - 获取字符串长度(字符串的个数)
str4 ="你好世界!"
for index in range(len(str4)):
print(index,str4[index])
for index in range(-1,-len(str4)-1,-1):
print(index,str4[index])