python字符截取可以和字符定位来共同使用,实现按照某些特殊字符截取字符串的目的。
字符截取
截取规则:实际Python字符串截取的规则为“前闭后开”
简单规律总结:字符串截取一般有两种形式
[:] 这种形式 就是 从哪截取到哪里 如果是负数 就从后往前找
[::] 这种形式 第一个 :代表处理后的字符串,第二个 : 代表着 间隔截取 正数正向输出,负数代表逆向输出
str = '0123456789'
print("str[0:3]:"+str[0:3]) # 正向截取字符串 0~3(不包含3) 即 012
print("str[:]:"+str[:]) # 正向输出所有字符串 即0123456789
print("str[6:]:"+str[6:]) # 正向输出字符串 从 5 (不含5)~ 结束 即 6789
print("str[:-3]:"+str[:-3]) # 正向输出 从开始 ~ 倒数第第3个字符(不含第3个)即 0123456
print("str[2]:"+str[2]) #输出第3个字符 即 2
print("str[:-1]:"+str[:-1]) # 正向输出 从开始 ~ 倒数第第1个字符(不含第1个)即 012345678
print("str[-1]:"+str[-1]) # 输出最后一个字符 即 9
print("str[-3:-1]:"+str[-3:-1]) #逆序输出 从倒数第 3 ~ 倒数第 1 (不含) 即 78
print("str[-3:]:"+str[-3:]) # 逆序输出 从倒数第 3 ~ 最后 即 789
print("str[::-1]:"+str[::-1]) # 逆序输出,连续输出所有字符串 即 9876543210
print("str[::-2]:"+str[::-2]) # 逆序输出,从最后一个开始,每隔2个字符串输出一个 97531
print("str[::1]:"+str[::1]) # 正序输出, 连续输出所有字符串 即 0123456789
print("str[::2]:"+str[::2]) # 正序输出,从第一个开始,每隔2个字符串输出一个即 02468
print("str[:-2:4]:"+str[:-2:4])# 正序输出 从第一个开始,每隔4个字符输出一个 即 04
print("str[1:-2:4]:"+str[1:-2:4])# 正序输出 从第二个开始,每隔4个字符输出一个 即 15
字符串中特殊字符的位置
Python index() 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,该方法与 python find()方法一样,只不过如果str不在 string中会报一个异常。
str.index(str, beg=0, end=len(string))
结合使用
str = '123/4567'
print(str[:str.index('/')])
print(str[str.index('/'):].strip('/'))--向后截取会把/截取出来,需要去除掉