字符编码和文件处理

1.字符编码 文件处理

软件器动流程

1.从硬盘加载到内存

2.加载文件到内存

3.代码加载文件内容,如果是文本编辑器,屏幕打印,解释器是把

代码转换成cpu的指令级

2.内存中用unicode,硬盘和网络中用utf-8 windows默认gbk,linux默认utf-8

3.在读取和存的时候编码方式不一样 找到正确的编码方式可恢复

4.encode("utf-8") unicode - > utf-8

decode("utf-8") 将二进制转换为unicode

扫描二维码关注公众号,回复: 4875168 查看本文章

encode和decode分别指编码和解码

str3 = u.encode('utf-8') # 以utf-8编码对u进行编码,获得bytes类型对象

文件处理

语法一

1.打开

f=open(file,"r",encoding)

2.读取

data=f.read()

print(data)

3.关闭文件

f.close

语法二

# with open(file,"r") as f:

# line=f.read()

# print(line)

语法执行完后会自动执行close

读取文件内容

mode 打开文件的模式

r只读 w只写

r+可读可写

read(默认全部读取,添加参数代表读取多少,文件较小可以默认)

with open(file,"r") as f:

# line=f.read()

# print(line)

readble判断可读给Ture否则为False

f=line.readable()

print(f)

readline()读取一行

# lines = line.read()

# lines=line.readlines()

# while True:

# lines = line.readline()

# if not lines:

# break

# print(lines)

b模式只能写入字节

readlines()读取全部,每一行放在列表里

f=line.readlines()

print(f)

写文件内容,原本文件不存在会创建

在w模式下,先清空该文佳

writelines()迭代写入文件

import sys

file=r"D:\360MoveData\Users\11419\Desktop\apple2.txt"

with open(file,'w',encoding="utf-8") as line:

# line.write("apple\napple")

line.writelines("\n".join(["as","cd"]))

write()

line.write("appleapple")

追加写入a会把光标移动到最后,不会清空

可读可写+

r+ 源文件不存在 会报错

w+ 清空原文件可创建

a+ 不存在可创建

猜你喜欢

转载自blog.csdn.net/qq_36811322/article/details/86010767