day6 字符编码和文件操作

保证不乱吗的核心法则就是,字符按照什么标准而编码的,就要按照什么标准解码,此处的标准指的就是字符编码

Unicode转为其他编码是编码,使用的方法是encode()方法,得到的结果是b开头的二进制字符编码,其他编码转为Unicode是解码,但是python3中已经实现自动解码的功能;

打开

f = open(r'文件名的路径',mode='打开文件的格式',encoding='操作文件的编码格式')

2、读/写

f.read()

f.write()

3、关闭文件

f.close() #回收操作系统的资源 (因为打开文件的时候不只是把文件读入内存中,

还有就是应用程序向操作系统发送请求,打开了文件处理程序,需要把操作系统中的IO流给关掉,减少资源占用)

 

mode分三种r  w   a 

分别是只读

只读模式,当文件名不存在的时候,就会报错

只写 当文件名不存在的时候就会生成一个文件,当文件名存在的时候就会覆盖原文件。

换行符号\n

末尾追加 当文件存在的时候,光标移动到末尾,当文件不存在的时候创建一个文件。

要求掌握的内容

f.read() #读取所有内容,光标移动到文件末尾
f.readline() #读取一行内容,光标移动到第二行首部
f.readlines() #读取每一行内容,存放于列表中

f.write('1111\n222\n') #针对文本模式的写,需要自己写换行符
f.write('1111\n222\n'.encode('utf-8')) #针对b模式的写,需要自己写换行符
f.writelines(['333\n','444\n']) #文件模式
f.writelines([bytes('333\n',encoding='utf-8'),'444\n'.encode('utf-8')]) #b模式

明日默写:

1、python3中的unicode转成其他编码称为编码还是解码,使用的方法是什么,得到的结果是什么类型

编码,encode,bytes

2、python3中的bytes类型转成unicode的过程称为编码还是解码,使用的方法是什么,得到的结果是什么类型

解码,decode,unicode

3、默认处理文件的房是t文本模式,操作文件的三种纯静模式是r,w,a,请分别介绍三种模式的作用,以及在文件存在和不存在的两种情况下有何特殊之处?

r 只读,默认rt模式,作用读取文件,文件不存在的话就报错,文件存在就读取

w 只写,作用写入内容,文件不存在,创建空文档,再写入文件存在时,清空在写入,

a 追加写,在文件末尾追加内容,文件不存在,创建空文档,文件存在,在文件末尾添加内容

4、打开文件写入,保证新写入的内容总是置于文件末尾

with open(r'a.txt',mode='a',encoding='utf-8') as f:

f.write('111\n')

 

5、循环读取文件每一行内容

with open(r'a.txt',mode='r',encoding='utf-8') as f:

print(f.readlines())

for line in f:

print(line,end='')

for line f.readline():

print(line,end='')

posted @ 2018-03-22 23:01  shanjinghao  阅读(136)  评论(0编辑  收藏  举报