Python学习:字符编码及文件处理

本节理论颇多,结论一些,只写重点。

 1.字符编码

  以什么编码存的就用什么编码取出

    PS:内存固定使用unicode编码,我们可以控制的编码是往硬盘存放或者基于网络传输选择的编码。

 2.数据是最先产生于内存中,是unicode格式,要想传输(1.网络2.硬盘)需要转成bytes格式

  #unicode------>encode(utf-8)--------->bytes

  拿到bytes,就可以往文件内存放,或者基于网络传输。

  #bytes--------->decode(utf-8)--------->unicode

个人认为,无论网络传输还是硬盘存放都是直接放在硬盘上,直接拿到bytes基本就是直接的二进制。

 3、pyhon3中字符串被识别成unicode

   python3中字符串encode得到bytes。

 4.了解

  python2中的字符串就想到于bytes

  python2中在字符串前加u,就是unicode。

时间: 2025-01-11 14:10:03

Python学习:字符编码及文件处理的相关文章

Python基础(字符编码与文件处理)

一.了解字符编码的知识储备 1.计算机基础知识(三副图) 2.文本编辑器存取文件的原理(notepad++,Pycharm,word) 打开编辑器就启动了一个进程,是在内存中运行的,所以在编辑器写的内容在没保存之前都是存放在内存中的,断电后数据就会丢失.因而需要保存到硬盘上,点击保存按钮,就从内存中把数据刷到硬盘上. 3.Python解释器执行py文件的与原理,例如python test.py 第一阶段:python解释器启动,此时就相当于启动了一个文本编辑器. 第二阶段:python解释器相当

Python学习-字符编码的理解

Unicode编码和ASCII码两者都是机器能够理解的编码,你就是说出现一个码,计算机知道它对应哪种符号.因为这种编码形式将不同的字符全都和电平的高低电位联系在一起. Unicode,这种编码是全球通用的编码,就是说所有计算机都包含的编码.包含 utf-32(占4个字节),utf-16(占两个字节),utf-8(占1-4个字节),这三种形式. 也就是说utf-8,就是一种Unicode的编码. utf-16就是现在最常用的unicode版本, 不过在文件里存的还是utf-8,因为utf8省空间.

python基础(三)----字符编码以及文件处理

字符编码与文件处理 一.字符编码 由字符翻译成二进制数字的过程 字符--------(翻译过程)------->数字 这个过程实际就是一个字符如何对应一个特定数字的标准,这个标准称之为字符编码. 字符编码的发展史 阶段一:现代计算机起源于美国,最早诞生也是基于英文考虑的ASCII ASCII:一个Bytes代表一个字符(英文字符/键盘上的所有其他字符),1Bytes=8bit,8bit可以表示0-2**8-1种变化,即可以表示256个字符 ASCII最初只用了后七位,127个数字,已经完全能够代

Python自动化开发课堂笔记【Day03】 - Python基础(字符编码使用,文件处理,函数)

字符编码使用 1. 文本编辑器如何存取文件 文本编辑器相当一个运行在内存中的进程,所以文件内容在编辑未存储时都是在内存中的,尚未存储在硬盘之中,在没有保存之前,所编辑的任何文本都只是一堆字符,没有任何逻辑上的意义,当存储文件的时候需要以一定的编码格式存储于硬盘之中,当进行文件读取的时候也需要以同样的编码格式进行读取到内存之中进行操作,如果存储文件的编码和读取文件的编码不一致则会引起读取过程中的乱码导致文件操作失败. P.S. --> Python解释器执行py文件的原理. Step1. Pyth

Python常见字符编码间的转换

学习Python,字符编码间的转换是绕不过去的一只拦路虎,不把编码彻底搞明白,总有一天它会猝不及防坑你一把. Python2.x和Python3.x在字符编码的设置上也有很大区别(Python3未来将是主流,所以Python3为主),今天我们就来一起学习下. 上一篇文章里我已经简述了Python的常见编码了,这里就不再赘述了,还不清楚的小伙伴可以先去看下:     http://www.cnblogs.com/schut/p/8406897.html 一.Unicode 和 UTF-8的纠葛 U

python 处理字符编码问题

今天好不容易重新开始写Python做实验,结果被字符编码虐的体无完肤.其实之前就已经比较清楚python处理字符编码的套路,但是今天白天反复的出现can't encode/decode ..., the original code not in 178之类的提示,甚是无力,后来偶尔使用了一下sys.setdefaultencoding('utf8')就解决了全部问题,真是不解. 下面还是总结一下Python几个编码设置的含义吧. 1. #coding=utf8 这种形式的注释告诉解释器,应该以c

python6期 字符编码与文件处理

字符编码与文件处理 一    了解字符编码的储备知识 python解释器和文件本编辑的异同      相同点:python解释器是解释执行文件内容的,因而python解释器具备读py文件的功能,这一点与文本编辑器一样 不同点:文本编辑器将文件内容读入内存后,是为了显示/编辑,而python解释器将文件内容读入内存后,是为了执行(识别python语法) 二  什么是字符编码 所谓的字符编码就是让计算机读懂人类的字符 必须经过一个过程: 字符--------(翻译过程)------->数字 这个过程

python 学习笔记-----编码问题

1.python 最早支持的是ASCII编码. 所以对于普通的字符串"ABC"为ASCII编码的形式.字母和数字之间的转换函数为ord('字母')和chr(‘数字’)函数. ord(‘A’)  输出 65     chr(65)输出 ‘A’ 2.后来添加了Unicode编码: 形式:u‘...’     例如 u‘中文’   用print 输出则为:中文   直接输出为一串编码字符 3.Unicode和utf-8 之间的转换: a.Unicode转换为utf-8的形式:u‘...’.e

Python-字典、集合、字符编码、文件操作整理-Day3

1.字典 1.1.为什么有字典: 有个需求,存所有人的信息 这时候列表就不能轻易的表示完全names = ['stone','liang'] 1.2.元组: 定义符号()t = (1,2,3)tuple 是元组的意思列表与元组不一样的地方是它 元组不可以修改元组其实跟列表差不多,也是存一组数,只不是它一旦创建,便不能再修改,所以又叫只读列表 语法 names = ("alex","jack","eric") 它只有2个方法,一个是count,一个