课堂笔记
-
字符串和字符
-
什么是字符串(类型:str)
字符串是容器型数据类型(序列),将’‘或者""或者’’’’’'或者""""""作为容器标志
里面每一个独立的文本符号就是字符串的元素
字符串是不可变的;字符串是有序的
字符串的元素:引号里边的每个符号都是字符串的元素,字符串的元素又叫字符
字符分为两种:普通字符,转义字符-
空串
empty1 = '' empty2 ="" empty3 ='''''' empty4 ="""""" # 空串引号之间不能加空格
-
字符串的容器标志
- ‘’ 和 ““没有区别,’’’’’’ 和 “”””""也没有区别
- ''和""里边的内容不能直接换行,只能通过转义字符换行
-
-
字符串的元素——字符
-
普通字符——在字符串中表示符号本身的字符
-
转义字符——\和其他符号一起组合来表示特殊意义和功能的字符
\n——换行
\t——水平制表符(相当于table键)
'——表示一个普通的单引号
"——表示一个普通的双引号
\——表示一个普通的反斜杠(\) -
阻止转义(r或R)——让字符串中所有的转义字符功能消失
在字符串前加r或者R:r’’,R’’
-
-
编码值——字符编码
-
编码值——计算机在存储符号的时候其实存的是这个符号对应的固定数字,这个数字就是符号对应的编码值
-
编码表——将字符和数字一一对应
''' ASCLL码标——总共有128个符号,只有美国常用符号,不包括中文; 数字在字母前面,大写字母在小写字母前面; 0~9::4~57 A: 65 Z: 90 a: 97 z: 122 大写字母与小写字母之间有间隙 Unicode编码表(python)——Unicode编码表中包含了ASCLL码; 包含了目前世界上所有国家,民族的所有语言符号,也叫万国码; 中文编码范围:4e00~9fa5 chr(编码值)——获取编码值对应的字符 例如:print(chr(0x9fa5)) ord(字符)——获取指定字符的编码值(凡是需要字符的地方,都给长度是1的字符串) 例如:print(ord('梅'), ord('迁')) 编码字符——\u加四位十六进制数 如:\u4e00 ,当不足四位时前面用0补全 进制转换:hex(数)—十六进制、oct(数)—转为八进制、bin(数)—转为二进制 '''
-
-
-
计算机基础
-
内存单位
- 位(bit) —— 计算机内存的最小单位
- 1字节(byte) = 8 位 ——程序申请内存的最小单位
-
进制
-
十进制
基数:0~9
进位:逢十进一
位权:10**(N-1)
表示方式:直接写 -
二进制
基数:0,1
进位:逢二进一
位权:2**(N-1)
表示方式:加前缀0b,其中b可以大写也可以小写 -
八进制
基数:0~7
进位:逢八进一
位权:8**(N-1)
表示方式:加前缀0o,其中o可以大小也可以小写 -
十六进制
基数:0~15
进位:逢八进一
位权:16**(N-1)
表示方式:加前缀0x,其中x可以大小也可以小写
-
-
-
字符串相关操作
-
查——字符串获取字符与列表获取元素一样
- 查单个、切片、遍历
- 一个空格和一个转义字符也是一个字符
-
运算符
-
字符串1 + 字符串2 —— 将两个字符串拼接产生一个新的字符串
例如:print(‘abc’ + ‘123’) —> ‘abc123’
-
字符串 * N —— 将字符串重复N 次产生一个新的字符串
-
字符串比较大小:>,<,>=,<=
两个字符串比较大小,是比较第一对不相等的字符的编码大小
-
-
判断类型
''' 判断是否是数字字符:'0' <= char <= '9' 判断是否是小写字母字符:'a' <= char <= 'z' 判断是否是大写字母字符:'A' <= char <= 'Z' 判断是否是字母字符:'a' <= char <= 'z' or 'A' <= char <= 'Z' 判断是否是中文:'\u4e00' <= char <= '\u9fa5' '''
-
相关函数(len,str)
-
str(数据)——将数据转换成字符串(任何类型的数据都可以转换成字符串,转换的时候直接在数据输出值外加引号)
例如:print(str(‘100’)) —> ‘100’
-
-
-
字符串相关方法
-
字符串.join(序列)——将字符串中的元素用指定字符串连接,产生一个新的字符串,序列中的元素必须是字符串
names = ['张三', '李四', '小明'] result = ''.join(names) print(result) # '张三李四小明' result1 = '+'.join(names) print(result1) # '张三+李四+小明' message = 'abc' print('.'.join(message)) # a.b.c num = [12, 34, 435] result3 = '-'.join([str(x) for x in num]) print(result3) #12-34-435 list1 = ['name', 23, True, '你好', '哈哈'] result4 = '+'.join([x for x in list1 if type(x) == str]) print(result4) # 'name+你好+哈哈'
-
字符串切割——split
- 字符串1.split(字符串2)——将字符串1中的所有字符串2作为切割点,对字符串1进行切割
- 字符串1.split(字符串2, N)——对字符串1中前N个切割点进行切割
-
替换——replace
- 字符串1.replace(字符串2, 字符串3)——将字符串1中所有的字符串2替换成字符串3
- 字符串1.replace(字符串2, 字符串3, N)——将字符串1中前N个字符串2替换成字符串3
-