01字符串中的元素
1. 阻止转义
定义;在字符串的最前面可以添加r/R来阻止字符串中的转义字符转义。也就是让其失效。
str='how are you\n fine'
str1=r"how are you \n fine"
print(str)
print(str1)
- python中可以吧字符串看成一个序列(容器),容器中的内容是字符。每一个字符可
以成为字符串中的元素
字符串是一个不可变的序列,有序(不可变指的是字符串中的每个字符以及每个字符的顺序以及位置不可变)
str2 = "hello"
3. 获取字符串中的单个字符
语法; 字符串[下标] ---> 根据下标获取字符串中的字符
说明; a. 字符串;可以是字符串的变量,也可以是字符串的值
b. []; 固定写法
c. 下标: 范围 0~字符串长度-1(从前往后); -1~-长度(从后往前).
注意; 下标是整数,并且不能越界 超出字符串范围
python中每个字符串中字符都会对应一个下标,下标是根据字符在字符串中的位置从前往后
一次增加的(第一个值是0)
例:str3= "python"
p->0, y->1 ,t->2 ....
n-->-1 , o--> -2, h--> -3 ...
print(str3[-6])
print('python'[0])
print(str3[4]) #获取正数第4+1个字符(元素)
print(str3[-2]) # 获取倒数第二个字符(元素)
练习;获取'good good study\n day day up!'
注意;一个空格算一个字符,一个转义字符也算一个字符,一个制表符也算一个字符
str4='good good study\n day day up!'
print(str4[-11])
print(str4[17])
4. 获取字符串中的部分字符(切片)
**语法;字符串[起始下标1:结束下标2] -->获取字符串中从起始下标开始到结束下标前的所有的字符
默认步长为1
注意:起始下标对应的字符要在结束下标对应的字符的前面
str5='同九年,汝何秀!'
print(str5[1:3])
print(str5[2:6])
print(str5[5:-1])
b. 语法: 字符串[起始下标1:结束下标2:步长] ——>从起始下标开始获取,每步长获取一个,获取到结束下标前为止。
步长为几就加几再数
步长为正: 从前往后取(起始下标对应的字符要在结束下标对应的字符的前面)
步长为负: 从后往前取(起始下标对应的字符要在结束下标对应的字符的前面)
str6 = '海贼王、一拳超人、一人之下、进击的巨人'
print(str6[1:10:2]) # 贼、拳人一
print(str6[10:0:-1]) # 人一、人超拳..贼
c. 切片时下标是可以省略,省略不同的下标有不同的意义。
省略起始下标: 字符串[:结束下标] ———>从开头开始取(注意:这里的开头可能是第一个字符也可能是最后一个,看步长的正负)
str7='阁下何不同风起,扶摇直上九万里'
print(str7[:4])
print(str7[:4:-1])
省略结束下标:字符[起始下标:] ————> 从开始下标取,取完为止,取到最后。
print(str7[-4:])
print(str7[-4::-1])
两个下标都省 ;————>全部取完
print(str7[::-1]) #这样可以颠倒字符串的内容,产生一个逆序的字符串。
str8=str7[::-1]
print(str8)
注意 :切片的时候下标可以越界
02字符串运算符
python中的字符串支持+、*和比较运算符
1. 字符串的+号运算符
字符串1 + 字符串2 ----> 将字符串1和字符串2拼接在一起产生一个新的字符串
注意:+两边要么都是数字,要么都是字符串,不能一样一个
2. *
字符串1 * 整数n ----> 字符串1重复n次,产生一个新的字符串
n必须是整数,先算乘再算加
3.比较运算符
判断相等
print('abc' == 'abc') # 判断两个字符串的值是否相等
print('abc' != 'ab')
字符串比较大小: 比较两个字符串中从前往后每个字符的编码值的大小,比较到两个字符不相同为止
print('zabcdef' > 'azab')
print('你好' < 'abc')
判断一个字符是否是数字字符,判断一个字符是否是字母字符
print('===========')
char = 'H'
print('0'<=char<='9') # 判断char是否是数字字符
print('a'<=char<='z' or 'A'<=char<='Z') # char是否是字母