万字长文爆肝Python基础入门【第二弹、超详细数据类型总结】( 四 )


字符串是有序序列,可以使用索引来获取其中某个位置的元素 。它是不可变的,被创建之后其中的元素(也就是字符)不能被修改和删除 。
1、创建字符串
创建空字符串(即不包含字符的字符串):
字符串 = ''
>>>= ''
>>>
’’
创建包含元素的字符串:
字符串 = '若干字符'
>>>= 'happy’
>>>
’happy’
2、字符的获取
通过索引获取字符
字符 = 字符串[索引]
>>>= ‘happy’
>>> [2]
’p’
通过子串获取索引
所谓子串就是从字符串中截取下来的一部分,可以是一个字符,一部分字符、全部字符、或空字符串,如 'a'、'ppy'、'happy'、'' 都是 ‘happy’ 的子串 。查找子串时,返回的是子串的第一个字符的索引 。
索引 = 字符串.index(字符)
>>>= ‘happy’
>>> .index(‘p’)
2
>>>= ‘happy’
>>> .index(‘app’)
1
当字符或子串不存在时,index 方法将抛出错误 。
也可采用字符串的 find 方法来查找子串,使用方式与 index 一致,不同点在于 find 方法未找到子串时返回数字 -1,而不抛异常 。
>>>= ‘happy’
>>> .find(‘app’)
1
>>> .find(‘z’)
-1
查看字符是否存在于字符串中
查看字符是否存在于字符串中,需要借助的关键字 in,如下:
布尔值 = 字符 in 字符串
>>>= ‘happy’
>>> ‘a’ in
True
>>> ‘z’ in
False
统计字符在字符串中的个数
个数 = 字符串.count(字符)
>>>= ‘happy’
>>> .count(‘p’)
2
3、字符串的处理
字符串自带的方法非常多,除了上面介绍的几个之外还有四十多个,这是因为字符处理是编程时的一项高频工作 。将这些字符处理相关的功能以方法的形式集成在字符串里 。
这里列举几个常见的方法:
注意上面的这些字符处理功能,对字符串作处理后都是返回一个新的字符串,而不会直接修改原有的字符串 。为什么呢?字符串不可变呀!
4、字符转义
我们在创建字符串时,有一些字符是没法直接在引号中表示的,如单引号或双引号,因为这和表示字符串本身的符号冲突了,如:
>>>= 'I’m happy’
File “”, line 1
= ‘I’m happy’
^
:
抛出语法错误异常,因为将= 'I' 看作字符串的赋值,而后面的 m happy' 就无法解析了,因为不符合任何语法 。
这时就需要使用字符转义了,我们在这类无法直接在字符串中表示的字符前加上 \ 符号,形如 \',这样在解析时就能理解这是嵌入在字符串中的单引号 ':
>>>= 'I\'m happy’
>>>
"I’m happy"
像 \' 这样在前面加了反斜杠(\),为了能在字符串中正常表示的字符,叫作转义字符 。而这个转化的行为叫作字符转义 。
与单引号的用法相同,双引号用 \" 来转义 。
字符串中的 \ 用来做字符转义了,那怎么在字符串中表示斜杆 \ 这个字符呢?使用 \\,将斜杆 \ 转义一下 。除此之外,有一些空白符号也需要用转义字符来表示,因为我们没办法直接在字符串中表示它们,如常见的换行(\n),制表符(\t),回车(\r) 。
常用的转义字符含义
\'
单引号
\"
双引号
\\
反斜杠
\n
换行符
\t
制表符(Tab)
\r
回车
举个例子,如果在字符串使用了 \n,那么在用 print() 输出字符串的时候,这个字符串会被换行输出 。如: