Atopos

导航

python之字符编码

字符编码

image

一 定义

字符编码只和文本、字符串有关
字符编码内部记录了人类字符与数字对应关系的数据

二 字符编码发展史

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码

image

三 字符编码的使用

1.解决文件乱码情况
 文件当初以什么码编码的,打开的时候就得使用什么编码解

2.python解释器版本不同带来的编码差异
2.1python2.x内部默认使用的是ASCII码

步骤1 #  coding:utf8(文件头)
步骤2. 在python2.x中 定义字符串时前面要加一个小写的 u
      eg str = u 'name'

2.2python3.x内部默认使用utf8码

image

四 编码与解码

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!')

image

posted on 2021-11-10 20:39  Atopos_q  阅读(19)  评论(0)    收藏  举报