1.字符串的定义
字符串是n个字符组成的有限序列,串中包含的字符个数为字符串的长度。
其中:
空串:长度为 0 的串,不包含任何字符
空格串:有多个或一个空格组成,长度为空格数
子串:串中任意个连续的字符组成的子序列
主串:包含子串的串
子串的位置:子串的第一个字符在主串中的序号
2.字符串切片
切片规则:字符串名[开始位置索引:结束位置索引:步长]
(1)区间端点是具体数字时,为左闭右开,其中的步长可以不写,默认为1,表示从左往右选取字符,下一个选取字符为当前字符索引加1。那么-1表示从右往左选取字符,即下一个字符为当前字符索引减1。当然我们可以设置任意的非0整数。
str="01234567"
print(str)
print(str[1:5])
print(str[5:1:-1])
01234567
1234
5432
(2)开始位置可以为空,表示最左侧或最右侧,具体由步长的方向决定。
步长为正数,表示从左向右,开始位置为空表示最左端;步长为负数,表示从右向左,开始位置为空表示最右端。
str="01234567"
print(str[:3]) #左闭右开,此时开始位置为最左侧,因步长为+1,从左到右,字符串正序
print(str[:3:-1]) #此时开始位置为最右侧,步长为-1,从右到左,字符串逆序
print(str[2:]) #结束位置为空,表示从左往右,第三位开始,到最右侧结束,步长为1
print(str[2::-1]) #步长为-1,表示从第三位开始,从右往左,到第一位结束
print(str[-2:]) #开始位置也可以为负数,表示倒数第i个数
print(str[4:-1])
print(str[-4:-1:-1]) #倒数第4个到倒数第1个,方向为从左到右,但步长-1为从右到左
print("空")
012
7654
234567
210
67
456
#空格
空
3.字符串拼接
str="hello world"
print(str[3:8])
print(str[:6]+"你好"+str[5:])
lo wo
hello 你好 world
4.字符串大小写问题
(1)capitalize():将字符串第⼀个字符转换成⼤写,其他都调整为小写。
str1='xiaoxie'
print(str1.capitalize())
Xiaoxie
(2)title():将字符串每个单词首字母转换成大写。
str2="da xie"
print(str2.title())
Da Xie
(3)lower() / casefold():将字符串中大写转小写。
str3="Hello world"
print(str3.lower())
print(str3.casefold())
hello world
hello world
(4)upper():将字符串中小写转大写。
str4="Hello world"
print(str4.lower())
HELLO WORLD