字符编码和文件处理

一、字符编码

1.用什么编码encode就用什么解码decode

ps:内存固定使用unicode编码

我们可以控制的编码是往硬盘存放或基于网络传输

python3解释器默认的字符编码是utf-8

py2解释器默认的字符编码是ASCII

2.数据最先产生于内存,是unicode格式,要想传输需转成bytes格式

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

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

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

3.py3中的字符串encode得到bytes

二、文件处理

open:

1.会像操作系统,发起系统调用,操作会打开一个文件

2.在Python程序中会一个值指向操作系统打开的那个文件,我们可以把该值赋值给一个软件变量

#回收资源

1.f.close()关闭操作系统打开的文件,即2回收操作系统的资源(必要的)

2.del f:没必要做自己去做,在py程序运行完之后,会自动清理与该程序有关的所有内存空间

文本文件:只读模式

f=open(r‘aaa.py‘,‘r‘,encoding=‘utf-8‘)
f.read()
print(f.readlines())#文件所有的行都进来
print(f.readline(),end=‘ ‘)#一行一行的读
f.close()
只写模式,文本文件不存在则创建空文件,文件存在则清空
f=open(‘new1_txt‘,‘w‘,encoding=‘utf-8‘)
f.write(‘11111111\n‘)
 f.writelines([‘23222\n‘,‘555555\n‘])#同时写多行
f.writable()#没有弄懂f.writable()的作用
print(f)
f.close()

文本文件,只追加模式,文本文件不存在则创建,文件存在则清除

f=open(‘new2_txt‘,‘a‘,encoding=‘utf-8‘)
print(f.readable())
print(f.writable())
f.write(‘3333\n‘)
f.writelines([‘444444444\n‘,‘555555\n‘])
f.close()

rb

f=open(‘aaa.py‘,‘rb‘)
print(f.read().decode(‘utf-8‘))
复制图片
f=open(‘28.jpg‘,‘rb‘)
data=f.read()

wb

f=open(‘new3_txt‘,‘wb‘)
f.write(‘aaaa\n‘.encode(‘utf-8‘))
f=open(‘29.jpg‘,‘wb‘)
f.write(data)

ab

f=open(‘new3_txt‘,‘ab‘)
f.write(‘aaaaaa\n‘.encode(‘utf-8‘))

上下文管理

with open(‘aaaa.py‘,‘r‘,encoding=‘utf-8‘) as read_f,      open(‘aaaa_new.py‘,‘w‘,encoding=‘utf-8‘) as write_f:
    data=read_f.read()
    write_f.write(data)

所有的数据自带布尔值
修改文本文件用replace

时间: 2024-10-17 20:16:20

字符编码和文件处理的相关文章

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

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

python6期 字符编码与文件处理

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

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

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

字符编码、文件操作、函数定义

一.字符编码 字符串是一种数据类型,但是,字符串比较特殊的是还有一个编码问题. 因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理.最早的计算机在设计时采用8个比特(bit)作为一个字节(byte),所以,一个字节能表示的最大的整数就是255(二进制11111111=十进制255),如果要表示更大的整数,就必须用更多的字节.比如两个字节可以表示的最大整数是65535,4个字节可以表示的最大整数是4294967295. 由于计算机是美国人发明的,因此,最早只有127个字符被编

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

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

day 10 字符编码和文件处理 细节整理

pycharm是文本编辑器. 1 .字符编码: 字符====== (翻译过程)=======>数字. utf-8是unicode的变种,是万国编码.  2. 文本编辑器存取文件的原理(nodepad++,pycharm,word) 打开编辑器就打开了启动了一个进程,是在内存中的,所以在编辑器编写的内容也都是存放与内存中的,断电后数据丢失 因而需要保存到硬盘上,点击保存按钮,就从内存中把数据刷到了硬盘上. 在这一点上,我们编写一个py文件(没有执行),跟编写其他文件没有任何区别,都只是在编写一堆字

字符编码及文件操作

一,字符编码 1,什么是字符编码 计算机要想工作必须通电,也就是说'电'驱使计算机干活,而'电'的特性,就是高低电平(高低平即二进制数1,低电平即二进制数0),也就是说计算机只认识数字 很明显,我们平时在使用计算机时,用的都是人类能读懂的字符(用高级语言编程的结果也无非是在文件内写了一堆字符),如何能让计算机读懂人类的字符? 必须经过一个过程: 字符--------(翻译过程)------->数字 这个过程实际就是一个字符如何对应一个特定数字的标准,这个标准称之为字符编码 2,字符编码的使用 上

day10 字符编码和文件处理

一.字符编码: 一 了解字符编码的知识储备   1. 计算机基础知识(三幅图)       2. 文本编辑器存取文件的原理(nodepad++,pycharm,word) 打开编辑器就打开了启动了一个进程,是在内存中的,所以在编辑器编写的内容也都是存放与内存中的,断电后数据丢失 因而需要保存到硬盘上,点击保存按钮,就从内存中把数据刷到了硬盘上. 在这一点上,我们编写一个py文件(没有执行),跟编写其他文件没有任何区别,都只是在编写一堆字符而已.  3. python解释器执行py文件的原理 ,例

python第三天:字符编码、文件操作、函数

作业问题回顾 表格化输出 主要考察字符串的expandtabs的方法,使用空格替换TAB. 百鸡百钱 百鸡百钱的主要是用进行多次判断,然后输出打印. 上课内容 字符编码 概念 编码是计算机用来将人类可读的字符存储成二进制信息而使用的一种格式.字符编码主要针对字符的编码. python中相关的方法 decode:解码,将其他格式的数据转化为unicode格式的数据.转化以后就是Bytes类型的数据.Bytes的数据汉字会转化成字节码,而ascii码会转化成b'meg'的形式.可以接参数,接的参数就