初学Python-day14 文件处理2

文件的操作

 

1.过程

找到文件-->打开文件-->读取文件-->关闭文件

 

2.找到文件

相对路径:如:a.txt

绝对路径:磁盘根目录到当前文件的路径,如:c/windows/test/a.txt

 

3。打开文件的函数

open(file, mode='r', endcoding=None, errors=None)

file:要打开的文件

mode打开的方式

endcoding 字符编码 一般用utf-8

error 错误处理(igmore忽略错误)

 

4.返回值

打开文件的对象,之后的操作针对此对象操作

 

5.打开的方式

 

方式 说明
r 以只读的方式打开
rb 以二进制的形式打开
r+ 以读写的方式打开
w 以清空的方式打开,如果文件不存在则尝试创建
wb 以二进制清空写的方式打开,如果文件不存在则尝试创建
w+ 以读写的方式打开,如果文件不存在,则尝试创建
a 打开一个文件用于追加写,如果文件不存在,则尝试创建
ab 以二进制的方式打开一个文件,用于追加写,如果文件不存在,则尝试创建
a+ 打开一个文件用于读写,如果文件不存在,则尝试创建

 

 

 

6.使用

1 open('test_file.py', 'w', encoding='utf-8')

 

7.写入文件(注意要关闭close

 

函数 函数说明
write() 写入
writelines() 写入多行
flush() 将内容从缓冲区写入文件

 

示例:

f = open('test_file.py', 'w', encoding='utf-8')
f.write('hello world!')    
# f.flush()
f.close()



f.writelines(['hello\n', 'world\n', '!'])
f.close()

 

 

 

8.读取文件

函数 函数说明
read() 读取全部内容
readline() 读取一行
readlines() 读取所有行(以列表形式返回)
next() 调用next返回读取内容

 

示例:

1 f = open('test_file.py', 'r', encoding='utf-8')
2 print(f.read())
3 print(f.readline())
4 print(f.readlines())
5 f.close()

 

 

9.自动关闭(不用手动close)

with open('test.py', 'r', encoding='utf-8') as f:
    f.read()

 

10.编码与解码

encode(编码):将字符串进行编码

decode(解码):将编码进行解码

 

11.pickle模块

说明:可以将数据序列化到文件中,在反序列化获取,相当于写入文件时什么类型,读取就是什么类型

import pickle

dump()  将数据序列化后写入到文件中

dumps()   将数据序列化后直接返回

load()   将数据从文件中反序列化取出

loads()   将序列化后的数据直接反序列化

1 import pickle
2 dic1 = {'name':'john','age':18}
3 with open('test.txt', 'wb') as f:
4     pickle.dump(dic1, f)
5 
6 
7 with open('test.txt','rb') as f:
8     a = pickle.load(f)
9     print(a)

 

posted @ 2021-10-25 14:42  目光所至皆是你  阅读(27)  评论(0编辑  收藏  举报