九、文件操作

一、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()

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

辣个骑士

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值