Python数据类型深入学习之字符串

时间:2023-12-09 14:18:49

Python数据类型深入学习之字符串

一. Python字符串

1. 下面来看一下python中常见字符串常量和表达式:

Python数据类型深入学习之字符串

Python中用来编写字符串的方法有以下几种:

(1) 单引号:'speade'

(2) 双引号:"speade"

(3) 三引号:''' ....read me ... ''',    """  ....read me .... """

(4) 转义字符:"s\tnn\na\ome", \t, \n, \o为转义字符

(5) Raw字符串:r"c:\new\test.spm"    作用:用来抑制转义

(6) Unicode字符串:u"eggs\u0020hello world"

注意:Raw字符串操作如下:

Python数据类型深入学习之字符串

Python数据类型深入学习之字符串

Python自动在任意的表达式中合并相邻的字符串常量,字符串之间增加逗号会创建一个元组,尽管可以简单的在它们之间增加+号来表明合并操作,单双引号也可以相互嵌套。

Python数据类型深入学习之字符串

2. Python中的转义字符:

(1) \newline:忽视(连续)

(2) \\:反斜线(保留\)

(3) \':单引号(保留 ')

(4) \":双引号(保留 ")

(5) \a:响铃

(6) \b:倒退

(7) \f:换页

(8) \n:换行

(9) \r:返回

(10) \t:水平制表符

(11) \v:垂直制表符

(12) \N{id}:Unicode数据库ID

(13) \uhhhh:Unicode 16位的十六进制值

(14) \Uhhhh...:Unicode 32位的十六进制值

(15) \xhh:十六进制值

(16) \ooo:八进制值

(17) \0:Null

(18) \other:不转义(保留)

3. 分片操作的扩展,加入第三个参数

形式如右边所示:X[I:J:K]  ---->意思为:索引X对象中的元素,从偏移为I直到偏移为J-1,每隔K元素索引一次。下面看一下用法:

Python数据类型深入学习之字符串

注意:当K为负值时,可以理解为反转顺序获取元素

4. 数据类型转换:int():转换为整型,float():转换为浮点数,str():转换为字符串,repr():转换为字符串;type():判断数据类型;eval():将字符串转换为任意类型的数据

Python数据类型深入学习之字符串

Python数据类型深入学习之字符串

5. 单个字符转换:ord():将单个字符转换为对应的ASCII码,chr():将ASCII码转换为字符。

6. 字符串格式化     Python使用%对字符串的值进行格式化。
(1) 在%操作符的左侧放置一个需要进行格式化的字符串,这个字符串带有一个或多个嵌入的转换目标,都以%开头;

(2) 在%操作符右侧放置一个对象(或多个,在括号内),这些对象将会插入到左侧想让Python进行格式化字符串的(或多个)转换目标的位置上去。

上面的表述有点儿绕口,但是看了例子之后就很容易明白了!!

Python数据类型深入学习之字符串

那么上图中的%s和%d究竟是什么意思呢,来看下面这张表:

Python数据类型深入学习之字符串

7. 基于字典的字符串格式化    字符串的格式化允许左边的转换目标来引用右边字典中的键来提取对应的值。示例如下:

Python数据类型深入学习之字符串

Python数据类型深入学习之字符串

8. 字符串方法  由于Python中处理字符串对象的方法很多,这里就不再一一列举,可以通过dir()和help()函数去了解相关的方法。这里只重点举例说一下常用的方法:

(1) replace(param1, param2, param3)方法:该方法可以有三个参数,第一个表示原始子字符串,第二个表示替换原始字符串的字符串,第三个表示替换的次数(因为默认情况下,没有第三个参数的话,就会对原始字符串进行全局搜索并替换)。看示例:

Python数据类型深入学习之字符串

(2) find()方法:find方法返回在子字符串首次出现处的偏移(索引),未找到时返回-1

(3) join()方法:可以将列表合成一个字符串,与之相反的是list()方法,将字符串转化成列表:

Python数据类型深入学习之字符串

注意:join前面是需要指定分隔符的