python之字符编码
字符编码

一 定义
字符编码只和文本、字符串有关
字符编码内部记录了人类字符与数字对应关系的数据
二 字符编码发展史
1.ASCII码 里面记录了英文字符与数字对应关系
是用一个字节来存储对应关系 英文字符加符号不超过127个 (字节bytes)
1.1 需重点记住的两组对应关系
A-Z:65-99
a-z:97-122
2.GBK码 记录英文中文与数字的对应关系
对应英文是用一个字节存储
对应中文是使用两个字节甚至更多字节
3.shift_JIS码是记录日本英文与数字的对应关系
Euc_kr码是记录韩语英文与数字的对应关系
4.unicode(万国码) 实现不同国家之间的文本数据彼此之间无障碍交流
统一使用两个及以上字符记录字符与数字的对应关系
4.1utf8码 是万国码的优化版本
英文是用一个字节来存储
中文是用三个字节或者更多字节
现在都默认使用utf8码

三 字符编码的使用
1.解决文件乱码情况
文件当初以什么码编码的,打开的时候就得使用什么编码解
2.python解释器版本不同带来的编码差异
2.1python2.x内部默认使用的是ASCII码
步骤1 # coding:utf8(文件头)
步骤2. 在python2.x中 定义字符串时前面要加一个小写的 u
eg str = u 'name'
2.2python3.x内部默认使用utf8码

四 编码与解码
1.编码 encode
将人类能够读懂的字符按照指定的编码转换成数字
2.解码 decode
将数字按照指定的编码转换成人类能够读懂的字符
eg # str = '生活是与你一起才值得!'
res = str.encode('utf8')# 将字符串编码成数字
print(res)
res1 = res.decode('utf8')#将数字解码成字符串
print(res1)
五 文件操作
1.文件概念
文件是操作系统暴露给用户操作硬盘的快捷方式(接口)
2.代码如何操作文件
2.1.利用关键字open close打开关闭文件
关键字 open() close()
open('01.py')#打开01文件
open(r'D:\py36\day01\01.txt') # 按路径打开文件
res = open('01.txt3','r',encoding='utf8') # 打开01文件用utf8解码后只读
print(res.read())
res.close() # 关闭文件
# with上下文管理 能自动帮你close文件
with open(r'01.txt','r',encoding='utf8') as f1:
# f1=open() f1.close()
print(f1.read())
2.2只读模式(只能看不能改)
关键字 read()
路径不存在 直接报错
路径存在 可以读取文件内所有内容
2.3只写模式(只能写不能看)
关键字 write()
路径不存在 自动创建
路径存在 1.会先清空文件里内容 2.再执行写入的操作
with open(r'01.txt', 'w', encoding='utf8') as f:
# f.read()
f.write('hello world!')

浙公网安备 33010602011771号