8. 数据类型--字符串(str)
第8天练习(字符串)
字符串是以 单引号 或 双引号 括起来的任意文本,其中单引号 或 双引号 属于字符串的字符,单引号 或 双引号只是一种表示形式
例如:
str_a='abc'
str_b="abc"
这两个字符串等价,没啥区别,只是表示形式不一样
1.单引号,双引号共用场景:
双引号中如果在需要引号,则不能在出现双引号,只能单引号(单引号中如果需要引号,则不能出现单引号,只能是双引号)
例如:
str_c1="Mary's book"
str_c2='Mary\'s book'
str_c3='Mary "lucy '' lucky book'
2.如果字符串内部既包含'又包含"怎么办?可以用转义字符\来标识
例如:
str_a='I \' m OK !'
str_b="I \' m OK !"
3.转义字符
转义字符\可以转义很多字符,比如\n表示换行,\t表示制表符,字符\本身也要转义,所以\\表示的字符就是\
例如:
·1.str_a='leaves\n grass'
2、str_b='leaves\t grass'
3、str_c='leaves\r\n grass'
4、str_d='leaves\\ grass'
5、str_e='leaves\\\grass'
\\是成对匹配的,如果有单数的话,只匹配成对出现的,单数的不匹配,匹配过的也不会
str_f="Mary\'s book"
6、常见的几种转义用法:\r\t \r\b \r\n
4.R 或 r 的用法--简化转义
如果一句话中有很多需要用转义字符来转义,则可以使用"r"来简化,r写在字符串最前面
例如:
str_k=r"G:\leaves_re_study\leaves_study\leaves_study001"
str_f=r"Mary's book"
str_f=R"Mary's book"
5.注释
1.# 单行注释
注释不会被打印,可以在类,函数,方法和变量中,对其做出一个解释,例如这个函数 或 方法是干啥的
2.多行注释
1.三个成对出现的单引号(''' ''')
1.可以用在一个类或者方法中,也是起到一个解释说明的作用
2.可以作为字符串的格式化来用
2.三个成对出现的双引号(""" """)
1.可以用在一个类或者方法中,也是起到一个解释说明的作用
2.可以作为字符串的格式化来用
6.字符串的截取--即切片
字符串的截取的语法格式如下:
变量[头下标 : 尾下标 : 步长]
索引值以 0 为开始值,-1 为从末尾的开始位置。
1.正向切换
例如:
2.反向切片
反向取值,可以采用头下表+步长 等于第2个元素来计算
例如:
str[-1:-4:-1]
第一个元素的索引是-1,及'b'
第二个元素的索引是(-1)+(-1),及'0'
第三个元素的索引是(-1)+(-1)+(-1),及'0'
7."+"拼接字符,"*"复制字符
8.count("字符")--统计字符出现的个数
9.len(str)--统计字符长度
10.replrace(旧,新,替换次数)
11.成员运算符(in not in ) - 如果字符串中包含给定的字符返回 True
1.in 包含
2.not in 不包含
12.find() 方法检测字符串中是否包含子字符串 str
find() 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,如果指定范围内如果包含指定索引值,返回的是索引值在字符串中的起始位置。如果不包含索引值,返回-1。
格式:
str.find(str, beg=0, end=len(string))
13.字符串格式化(%S)
1.%s 所有的字符类型都可以用
2.%d
3.%f
14.f-string
f-string 是 python3.6 之后版本添加的,称之为字面量格式化字符串,是新的格式化字符串的语法。
f-string 格式化字符串以 f 开头,后面跟着字符串,字符串中的表达式用大括号 {} 包起来,它会将变量或表达式计算后的值替换进去,实例如下:
15.字符串转化为列表
1.split 分割
例如:以空格分割
没有空格的时候,就返回一个列表,且列表中只有一个元素
2.使用list(str)转化,返回一个list,且会把str中每一个元素当作一个list中独立的字符串来处理
16.strip() 杀掉str前后的空格
只能删除首尾的空格,不能删除中间的空格,且返回的还是一个字符串
17.isalnum()
18.isalpha()
如果字符串至少有一个字符并且所有字符都是字母或中文字则返回 True, 否则返回 False
19.isdigit()
20.islower()
如果字符串中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是小写,则返回 True,否则返回 False
21.isnumeric()
22.join(seq)
以指定字符串作为分隔符,将 seq 中所有的元素(的字符串表示)合并为一个新的字符串
23.lower()
转换字符串中所有大写字符为小写.
24.upper()
25.max(str)
26.min(str)
返回字符串 str 中最小的字母。
注意事项:
1、反斜杠可以用来转义,使用r可以让反斜杠不发生转义。
- 2、字符串可以用+运算符连接在一起,用*运算符重复。
- 3、Python中的字符串有两种索引方式,从左往右以0开始,从右往左以-1开始。
- 4、Python中的字符串不能改变。