字符串的基本特点;1,作为程序员未来的用的最多的就是字符串而不是数学,逻辑能力远大于数学能力
2,本质是字符序列,python的字符串是不可变的,无法对字符串进行任何修改,但可以将字符串的一部分复制打新新创建的字符串,达到看起来修饰的效果
字符串的编码;python3直接支持Unicode,可以表示世界上任何书面语言,字符默认是16位的Unicode编码,ASCII是Unicode编码的子集
使用内置函数ord()可以把字符换成对应的Unicode码:
使用内置函数chr()可以把十进制数字换成对应的字符。
连续三个单引号或三个双引号,可以帮助我们创建多行字符串
转义字符 可以使用\ +特殊字符,实现某些难以实现的字符的效果
转义字符 | 描述 |
\ | 续行符 |
\\ | 反斜杠符号 |
\' | 单引号 |
\" | 双引号 |
\b | 退格 |
\n | 换行 |
\t | 横向制表符 |
\r | 回车 |
字符串的拼接;
可以使用 + 将多个字符拼接起来
(1)如果 + 两边都是字符串,则拼接
(2)如果 + 两边都是数字,这加法运算
(3)如果 + 两边类型不同,则抛出异常
可以将多个字符串直接放到一起实现拼接
字符串的复制 使用*可实现字符串的复制
不换行打印 前面调用print时,会自动打印换行符,如果不想换行。可以通过参数 end ="任意字符串”。实现末尾添 加任何内容
从控制台读取字符串 可以使用input{}从控制台读取
str()实现数字转化型字符串 在调用print()函数时,解释器自动调用了str() 将非字符串的对象转化成字符串
使用[]提取字符 我们可以通过在字符串后面添加[],在[]里指定偏移量,可以提取该位置的单个字符
正向搜索 最左侧第一个字符,偏移量是0,第二个偏移量是1.直到len(str)-1为止
反向搜索 最右侧第一个字符,偏移量是-1,倒数第二个偏移量是-2,直到-len(str)为止
replace()实现字符串的替换 字符串是“不可改变的”通过[]可以获取字符串指定位置的字符,所以尝试改变字符串的某个字符,发现报错了。当确实需要替换某些字符时,需要新建字符串来实现,实际上我们是创建了新的字符串
字符串切片slice操作 切片slice操作可以让我们快速的提取子字符串。标准格式为:[起始偏移量是start: 终止偏移量end; 步长step]
操作和说明 | 示例 | 结果 |
[;]提取整个字符串 | “abcdef” [:] | "abcdef" |
[start:]从start索引开始到结尾 | “abcdef”[2:] | "cdef" |
[‘:end’’]从头开始知道end-1 | “abcdef”[:2] | "ab" |
[startend]从start到end | "abcdef"[2:4] | "cd" |
[start:end:step]从start提取到end-1,步长是step | “abcdef”[1:5:2] | "bd‘’ |
切片操作时,起始偏移量和终止偏移量不在[0,字符串长度-1]这个范围,也不会报错,偏移量小于0则会当做0,终止偏移量大于-1会被当成-1,不会被报错