python持久化存储文件操作方法
存储文件的重要
一个程序在运行过程中用了九牛二虎之力终于计算出了结果,试想一下如果不把这些数据存放起来,相比重启电脑之后,。 默认数据是加载到内存中,结果也是保存到内存中, 程序执行结束,所有的数据释放。
要读取二进制文件,比如图片、视频等等,用'rb', ‘wb', 'ab'等模式打开文件即可!
mode:打开文件:
r:只能读文件
w:只能写入(清空文件内容)
a+:读写(追加)
f = open(‘doc/hello.txt',mode=‘a')
文件的读写操作
f.write('\nhello python')
文件的关闭
f.close()
f = open('C:/Users/Shinelon/PycharmProjects/pythonProject1/python/westos',mode='a+')f.write('\nxinxiedeo')
结果如下:
本来文件westos里面内容如下:
文章图片
执行命令之后:就添加进去了
文章图片
文章图片
指针的概念 对于指针:seek(offset, from)有2个参数: offset:偏移量 from:方向!!
0:表示文件开头;
1:表示当前位置;
2:表示文件末尾
文件的关闭
方法一: 调用close()方法关闭文件。文件使用完毕后必须关闭,因为文件对象会占用操作系统的资源,
并且操作系统同一时间能打开的文件数量也是有限的:
方法二: Python引入了with语句来自动帮我们调用close()方法
with open('/root/PycharmProjects/pythonProject1/4/test.txt','w+') as f:f.write('hello world\n')f.seek(0,0)#移动指针位置到文件最开始print("当前指针位置为:",f.tell())print(f.read())#读取文件内容
执行和结果如下:
文章图片
若是修改指针位置:
with open('/root/PycharmProjects/pythonProject1/4/test.txt','w+') as f:f.write('hello world\n')f.seek(0,2)#移动指针位置到文件末尾print("当前指针位置为:",f.tell())print(f.read())#读取文件内容
那么输出如下:
文章图片
OS模块
功能:
os,语义为操作系统,处理操作系统相关的功能,可跨平台。 比如显示当前目录下所有文件/删除某个文件/获取文件大小……
获取操作系统的类型
import os #Linux操作系统import platform #windows操作系统print(os.name)# 2.获取主机信息,windows系统使用platform模块,如果是linux系统直接使用os模块
结果如下:
文章图片
我们需要完善代码:
不确定是windows系统,还是linux操作系统!!
用到
try:可能报错的执行内容!
excpt:可能异常的执行内容!
finally:都会执行的内容!
import osimport platformtry: uname = os.uname()except : uname = platform.uname()finally: print(uname)
结果如下:
文章图片
获得系统的环境变量!
import osenvs= os.environprint(envs)
结果如下:
文章图片
文件的路径问题也很重要:
先判断是不是就对的路径
import osprint(os.path.isabs('/root/PycharmProjects/pythonProject1/4/test.txt'))print(os.path.isabs('test.txt'))
结果如下:
文章图片
生成绝对路径:
import osprint(os.path.abspath('/root/PycharmProjects/pythonProject1/4/test.txt'))print(os.path.abspath('test.txt'))
结果如下:
文章图片
目录名和文件名的拼接 #os.path.dirname获取某个文件对应的目录名
#__file__是指当前文件
#join 拼接,将目录和文件名拼接起来
import osBASE_DIR = os.path.dirname(__file__)setting_file = os.path.join(BASE_DIR,'dev.conf')print(setting_file)
结果如下:
文章图片
获取目录名或者文件名
import osfilename = 'D:/root/westos/test.txt'print(os.path.basename(filename)) #输出文件名print(os.path.dirname(filename)) #输出文件所在目录
结果如下:
文章图片
介绍文件的创建和删除 os模块中的rename()可以完成对文件的重命名操作。
rename(需要修改的文件名, 新的文件名)
os模块中的remove()可以完成对文件的删除操作
remove(待删除的文件名)
【python持久化存储文件操作方法】以上就是python持久化存储文件操作的详细内容,更多关于python存储文件的资料请关注脚本之家其它相关文章!
推荐阅读
- python学习之|python学习之 实现QQ自动发送消息
- 逻辑回归的理解与python示例
- python自定义封装带颜色的logging模块
- 【Leetcode/Python】001-Two|【Leetcode/Python】001-Two Sum
- Python基础|Python基础 - 练习1
- Python爬虫|Python爬虫 --- 1.4 正则表达式(re库)
- Python(pathlib模块)
- python青少年编程比赛_第十一届蓝桥杯大赛青少年创意编程组比赛细则
- Python数据分析(一)(Matplotlib使用)
- Python|Python 9.20