字符串本质上就是由多个字符组成的,因此程序允许通过索引来操作字符,比如获取指定索引处的字符,获取指定字符在字符串中的位置等。
Python字符串直接在方括号([])中使用索引即可获取对应的字符,字符串中第一个字符的索引为0、第二个字符的索引为1,后面各字符依此类推。
此外,Python 也允许从后面开始计算索引,最后一个字符的索引为-1,倒数第二个字符的索引为-2·..···依此类推。
下面代码示范了根据索引获取字符串中的字符。
# !/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2024/01
# @Author : Laopi
s = '测试划水老师和软件测试老痞准备拜把子,哈哈哈'
# 获取s中索引为3的字符
print(s[3])
# 获取s中从右边开始,索引为5的字符
print(s[-5])
除可获取单个字符之外,也可在方括号中使用范围来获取字符串的中间“一段”被称为子串)。
例如如下代码(程序清单同上)。
# !/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2024/01
# @Author : Laopi
s = '测试划水老师和软件测试老痞准备拜把子,哈哈哈'
# 获取s中索引为3的字符
print(s[3]) # 水
# 获取s中从右边开始,索引为5的字符
print(s[-5]) #子
# 获取s中从索引2到索引7(不包含)的子串
print(s[2:7]) # 划水老师和
# 获取s中从索引2到倒数第2的子串
print(s[2:-2]) # 划水老师和软件测试老痞准备拜把子,哈
# 获取s中从索引倒数第4到倒数第2的子串
print(s[-4:-2]) # ,哈
上面用法还允许省略起始索引或结束索引。如果省略起始索引,相当于从字符串开始处开始截取:如果省略结束索引,相当于截取到字符串的结束处。例如如下代码(程序清单同上)。
#获取s中从索引5到结束的子串
print(s[5:])#师和软件测试老痞准备拜把子,哈哈哈
#获取s中从倒数第3个开始到结束的子串
print(s[-3:])#哈哈哈
#获取s中从开始到索引4的子串
print(s[:4])#测试划水
#获取s中从开始到倒数第2的子串
print(s[:-2])#测试划水老师和软件测试老痞准备拜把子,哈
此外,Python字符串还支持用in运算符判断是否包含某个子串。例如如下代码。
#判断s中是否包含测试划水老师
print('测试划水老师' in s)#True
print('测试游泳老师' in s)#False
还可使用全局内置的mim0和ax0)函数获取字符串中最小字符和最大字符。例如如下代码
s1 = 'hskhdkhkhkdsbcxnbcxnvbndbvdnbcjdgf'
#输出s1字符串中最大的字符
print(max(s1))#x
#输出s1字符串中最小的字符
print(min(s1))#b