一、open函数
python中利用open()函数进行文件的打开和创建操作
f=open(“文件路径”,“访问模式”,“编码方式”)
中文编码为:encoding=“utf-8”
例:fp=open(“text.txt”,“w”)
f=open("./text.txt","w")#以写方式打开/创建文件,采用写方式创建
f.write("hahahahhahahhahahah")#f是函数返回值
f.close()#关闭文件
在当前文件夹中创建text.txt文件
二、路径
绝对路径:目标在电脑硬盘上的真实路径(从电脑盘符开始)
例如:D:\新建文件夹\python-stady\pythonProject6\python习题练习\3.08.py
相对路径:目标文件相对于当前文件的路径
./text.txt 或 text.txt: 表示当前文件所在目录
../ txet.txt:表示当前文件的上层文件夹目录寻找text.txt文件
三、文件操作模式
四、文件读写
写数据:write方法
f=open("./text.txt","w")#以写方式打开/创建文件,采用写方式创建
f.write("i an here\n"*3)#f是函数返回值,write操作会覆盖掉原来的文件内容
f.close()#关闭文件
采用“a”模式可以追加内容
读取内容:read方法
f=open("./text.txt","r",encoding="utf-8")
s=f.read()#将内容赋值
print(s)
f.close()#关闭文件
read()方法是一个字节一个字节读取文件内容,效率低
readline()读取一行数据,
readlines()读取多行数据,返回内容为列表
f=open("./text.txt","r",encoding="utf-8")
s=f.readline()#将内容赋值,读取一行内容
print(s)
f.close()#关闭文件f=open("./text.txt","r",encoding="utf-8")
s=f.readlines()#将内容赋值,读取多行数据,并将内容转化为列表形式
print(s)
f.close()#关闭文件
四、序列化和反序列化
我们可以将字符串写入文件,如果是个对象(列表,元组、字典等)就不能写入文件
所以:我们要将对象序列化(转化为字符序列),再写入文件,反序列化,是相反的操作
f=open("text.txt","a",encoding="utf-8")
lsit=[15,62,51]
f.write(list)
f.close()
对象不能写入文件操作
序列化:
dumps()
import json#导入json模块
f=open("text.txt","w",encoding="utf-8")list=[15,62,51]#初始化序列list=json.dumps(list)#将序列转化为字符序列
print(type(list))#打印类型
f.write(list)
f.close()
转存:dump(list,file)
import json#导入json模块
f=open("text.txt","w",encoding="utf-8")list=[15,62,66]#初始化序列
json.dump(list,f)#转换字符列表和存入文件同时进行
f.close()
反序列化:
loads()将内容反序列化
import json#导入json模块
f=open("text.txt","r",encoding="utf-8")
content=f.read()#读取文件内容
result=json.loads(content)#将字符序列转换为对象列表
print(result)
f.close()
load()
import json#导入json模块
f=open("text.txt","r",encoding="utf-8")
result=json.load(f)#对文件对象操作
print(result)
f.close()