一、字符串【字符序列】
特殊:1.原字符串不可变,可复制原来的生成新的字符串,达到改变的效果
2.Python不支持单字符类型,单字符也是一个字符串
二、字符编码
Python支持Unicode,因其可表示任何书面语言的字符,默认16位编码,即2**16
ASCII是2**8即256
三、字符串的创建、
1.引号创建字符串
特殊:连续三个单引号或者多引号,可以创建多行字符串(行的形式和定义的格式相同)
例如:res = ''' name = "张三"
class = "2班"
grade = "一年级" '''
2.空字符串和len()函数
Python允许空字符串的存在,长度为0
三、转义字符(特殊的:续行符)
四、字符串的两种拼接
1.使用"+"
2.多个字符直接放一起
五、字符串的复制,使用*来实现
比如:sit*3 结果:sitsitsit
六、使用print时,不换行打印,通过参数end='任意字符串'来实现
print(a,end='')
七、从控制台读取字符串,使用input来实现阻塞和等待
例如:name = input('请输入姓名:')
>>>请输入姓名:张三 (此处回车后会将值张三赋给name)
所以print('name') 结果:张三
八、字符串常用函数
1.str()
将其他类型转换成字符串,调用print(),函数时自动调用str()函数将非字符串转为字符串
2.使用[]提取字符串:类似数组的取某个索引的值
1)正向搜索:索引从0到len(str)-1
2)反向搜索:从右侧开始,索引从-1到-len(str)
3.replace()函数:字符串的替换
4.slice字符串切片操作:快速提取子字符串
格式:[起始偏移量start :终止偏移量end :步长step]
注意:step默认是1表示每隔一个字符取一个
5.split()分割:将字符串分割成列表
6.join():将一个列表组成字符串
拼接
+:每操作一次生成一个新的对象
*:join操作只有一个对象,效率比+更高
效率对比图:
7.字符串的比较
字符串的驻留机制:条件:只有字母、数字、下划线时,将相同不可变字符串放到驻留池中
比较:
==,!=比较的是两个字符串的值是否相同
is/not is比较的是两个对象
in/not in 关键字,判断某个字符(子字符串)是否在字符串中
8.字符串的查找
9.去除首尾的字符(注意:只去首尾指定字符)
10.大小写转换
11.格式排版
12.其他函数
13.字符串的格式化--函数format()
基本语法通过{}来代替%,通过索引或者参数,直接映射到参数值来实现
实例:
索引来实现:a = "名字是:{0},年龄是:{1}"
b = a.format("张三",18);
名字是:张三,年龄是:18
参数来实现:a = "名字是:{name},年龄是:{age}"
b = a.format(age=18,name="张三")
名字是:张三,年龄是:18
扩展:填充和对齐
14.可变字符串(多次修改字符串时,使用函数会生成多个对象,此时可以使用io.StringIO)