Python字符编码和文件操作

2021/11/10 22:10:58

本文主要是介绍Python字符编码和文件操作,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

一.字符编码

1.1 字符编码

计算机内部只识别二进制,但是用户在使用计算机的时候却可以看到格式各样的语言字符,字符编码记录了人类字符与数字对应关系的数据。字符编码只和文本文件和字符串有关 与视频文件 图片无关无关。

2.2 字符编码的发展史

2.2.1 一家独大

      计算机最初是由美国人发明的,美国人为了能够让计算机识别英文字符

      ASCII码:里面记录了英文字符与数字的关系,这套编码表所有的英文和符号加起来其实不超过127,之所以使用八位是为了后面发现新的语言。

 

2.2.2 群雄割据

  中国   

   当计算机进入中国后中国人为了能让计算机识别中文,发明了另外一套编码表,GBK码表,记录了英文中文与数字的对应关系,对于英文还是使用一个字节,对于中文使用两个字节甚至更多字节。

  日本 

    为了能够让计算机识别日文,也需要发明一套编码表。

    shift_jis码:记录了日文 英文 数字的对应关系。

   韩国人

    为了能让计算机识别韩文 也需要发明一套编码表。

    Euc_kr码:记录了韩文 英文日文 数字的对应关系。

2.2.3 分久必合

    为了能够实现不同国家之间的文本数据能够彼此无障碍交流,那就必须让编码进行一个个统一,即Unicode。它统一使用两个及以上字符记录与数字的对应关系。其中utf-8是其的优化版本。英文还是用一个个字节存储,中文使用三个字节或更多字节存储。

二.字符串编码方法

1.如何解决文件乱码的情况

  文件当初以什么编码的,打开的时候就以什么编码解

2.Python解释器版本不同带来的编码差异

   Python2.x 内部使用编码默认是ASCII

   Python3.x内部使用的是utf-8

# 在使用Python2.x 解释器的时候字符串前面要加一个小u
s=u'helloWord'

每天一个小技巧:

自定义文件模块内容:

file>>>settings>>>editor>>>file and code templates>>python script

 

3.编码与解码

编码 将人类能够读懂的字符按照指定的编码转换成计算机能读懂的二进制。

解码 将二进制数转换成人类能够读懂的文字,图片和字符。

1 s = '小张是大帅哥'
2 # 编码encode
3 res = s.encode('utf8')
4 print(res)
5 r1 = res.decode()
6 print(r1)

三.文件的操作

3.1 什么是文件

文件其实就是操作系统暴露给用户操作硬盘的“接口”。

3.2 代码如何操作文件

 关键字 open

3.3 文件路径

相对路径与绝对路径,路径中出现了字母与斜杠的组合产生特殊含义如何取消,在路径前面加一个r。

3.4 步骤方法

1 # 打开文件
2 open('jason.txt')
3 open(r'd:\python\09\a.txt')
# with上下文管理(能够自动帮你close())
with open(r'a.txt','r',encoding='utf8') as f1:  # f1=open() f1.close()
    print(f1.read())

3.5 文件读写模式

 1 # r 只读模式
 2 # 路径不存在直接报错
 3 with open(r'b.txt', 'r', encoding='utf-8') as f:
 4     print(f.read())
 5 # w 只写模式
 6 # 路径不存在直接报错
 7 with open(r'b.txt', 'w', encoding='utf-8') as j:
 8    j.write('只写模式')
 9 # a 只追加模式(追加内容)
10 with open(r'b.txt','a',encoding='utf-8') as l:
11     l.write('123')

 



这篇关于Python字符编码和文件操作的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程