数据类型相互转换
哪些类型可以转换成数字:
1. 整型可以转换成数字,
2. 字符串形式的整数也可以通过int()转换为数字,
3. 带负号的字符串形式的数字
哪些类型可以转换为浮点型:
1. 带有小数的数字可以转换
2. 带负号的小数可以转换
3. 小数点前后是数字可以转换
字符串与列表之间互相转换 (非常重要)
例:
s = 'abc123呵呵' print(list(s)) # ['a', 'b', 'c', '1', '2', '3', '呵', '呵'] 没有对应的 str(ls) ls = ['a', 'b', 'c', '1', '2', '3', '呵', '呵'] n_s = ''.join(ls) print(n_s)
是通过list直接进行转换的,转换之后没有对应的str格式,简单来说就是不能再转回字符串形式了。
所以是几种转换方式中用到最少的。
例2:
这种形式是通过.split()来进行转换的,括号内不写是默认按空格来进行拆分的。
再转回str类型就使用.''john来进行操作。
res = s1.split() s1 = 'a b c 1 2 3 呵 呵' res = s1.split() print(res)
这个实例是将字符串转换成列表的一个实例,首先通过.split()来将字符串转换成列表类型,进行赋值打印。
再通过.''john()转回字符串形式
s2 = 'ie=UTF-8&wd=你好帅' res = s2.split('&') print(res) # ['ie=UTF-8', 'wd=你好帅'] ls2 = ['ie=UTF-8', 'wd=你好帅'] n_s2 = '@'.join(ls2) print(n_s2) # ie=UTF-8@wd=你好帅
这个例子是将字符串转换成列表,通过for循环,将拆分下来的两个字符串分离加入元祖中,最后输出转换的列表。
需求:"ie=UTF-8&wd=你好帅" => [('ie', 'UTF-8'), ('wd', '你好帅')] res = [] s4 = "ie=UTF-8&wd=你好帅" ls4 = s4.split('&') # ['ie=UTF-8', 'wd=你好帅'] for ele in ls4: # v = ie=UTF-8 | wd=你好帅 k, v = ele.split('=') # k: ie v: UTF-8 res.append((k, v)) print(res)
这个例子是将字符串转换成字典,是先将字符串转换成列表通过for循环对 key完成赋值,最后输出字典
需求:"ie=UTF-8&wd=你好帅" => {'ie': 'UTF-8', 'wd': '你好帅'} res = {} s5 = "ie=UTF-8&wd=你好帅" ls5 = s5.split('&') # ['ie=UTF-8', 'wd=你好帅'] for ele in ls5: # v = ie=UTF-8 | wd=你好帅 k, v = ele.split('=') # k: ie v: UTF-8 res[k] = v print(res)
同上
需求:[('ie', 'UTF-8'), ('wd', '你好帅')] => {'ie': 'UTF-8', 'wd': '你好帅'} res = {} ls6 = [('ie', 'UTF-8'), ('wd', '你好帅')] for k, v in ls6: res[k] = v print(res)
这个示例是通过key映射表来拿到对应的值
# 8.需求:将汉字转化为数字 # 将 壹、贰、叁、肆、伍、陆、柒、捌、玖、拾、佰、仟 # 转化为 1、2、3、4、5、6、7、8、9、10、100、100 # 作业:壹仟捌佰玖拾叁 => 1893 num_map = { '壹': 1, '贰': 2, '仟': 1000 } ls8 = ['贰', '壹', '仟'] res = [] for v in ls8: num = num_map[v] # 通过key去映射表拿到对应的值,完成 '贰' => 2 res.append(num) print(res)
字符编码
1. 什么是字符编码:将人识别的字符转换计算机能识别的01,转换的规则就是字符编码表
2. 常用的编码表:ascii、unicode、GBK、Shift_JIS、Euc-kr
3. 编码操作:编码encode()、解码decode()
知识储备
电脑三大核心:cpu - 内存 - 硬盘(数据的存取过程)
软件及python解释器读取文件过程:启动 - 读取 - 展示|解释执行
python2环境的文件头:# coding: 编码格式
简介与发展
1. ascii - 各国编码 - 万国编码
2. 存取不一致的乱码现象
3. unicode与utf-8
核心
编码操作:编码encode()、解码decode()
1. 字节的存储方式:8个二进制位
2. 字符所占字节数:根据编码的不同,所占字节数可能不同
3. 三种格式字符串:u''、b''、r'