Python实现获取系统临时目录及临时文件的方法示例


Posted in Python onJune 26, 2019

本文实例讲述了Python实现获取系统临时目录及临时文件的方法。分享给大家供大家参考,具体如下:

在开发应用程序的过程中,会有一些临时的信息,或者不太重要的信息,会保存在一个特殊的目录下面,在windows 里面,通常会在 c:\docume~1\admini~1\locals~1\temp 这个地方,而在 centos 中就是 /tmp 目录

比如我们经常上网,网页的的一些临时信息都保存在这个临时目录里面。那么在我们自己写应用程序的时候,怎么得到这个临时目录,怎么创建临时文件呢。在python里面有tempfile这个模块可以调用.

1. 生成临时文件

import tempfile
tmpfd, tempfilename = tempfile.mkstemp()
print tmpfd
print tempfilename
os.close(tmpfd)

看到类似的如下结果:

3
c:\docume~1\admini~1\locals~1\temp\tmpbg6tkl

2.删除临时文件

os.unlink(tempfilename)

当然也还有其他的方法,这里将这些方法列出来,讲解一下

tempfile.mkstemp([suffix=''[, prefix='tmp'[, dir=None[, text=False]]]])

mkstemp方法用于创建一个临时文件。该方法仅仅用于创建临时文件, 调用tempfile.mkstemp函数后,返回包含两个元素的元组,第一个元素指示操作该临时文件的安全级别,第二个元素指示该临时文件的路径。参数 suffix和prefix分别表示临时文件名称的后缀和前缀;dir指定了临时文件所在的目录,如果没有指定目录,将根据系统环境变量TMPDIR, TEMP或者TMP的设置来保存临时文件;参数text指定了是否以文本的形式来操作文件,默认为False,表示以二进制的形式来操作文件。

tempfile.mkdtemp([suffix=''[, prefix='tmp'[, dir=None]]])

该函数用于创建一个临时文件夹。参数的意思与tempfile.mkdtemp一样。它返回临时文件夹的绝对路径。

tempfile.mktemp([suffix=''[, prefix='tmp'[, dir=None]]])

mktemp用于返回一个临时文件的路径,但并不创建该临时文件。

tempfile.tempdir

该属性用于指定创建的临时文件(夹)所在的默认文件夹。如果没有设置该属性或者将其设为None,Python将返回以下环境变量TMPDIR, TEMP, TEMP指定的目录,如果没有定义这些环境变量,临时文件将被创建在当前工作目录。

tempfile.gettempdir()

gettempdir()则用于返回保存临时文件的文件夹路径。

tempfile.TemporaryFile([mode='w+b'[, bufsize=-1[, suffix=''[, prefix='tmp'[, dir=None]]]]])

该函数返回一个 类文件 对象(file-like)用于临时数据保存(实际上对应磁盘上的一个临时文件)。当文件对象被close或者被del的时候,临时文件将从磁盘上删除。 mode、bufsize参数的单方与open()函数一样;suffix和prefix指定了临时文件名的后缀和前缀;dir用于设置临时文件默认的保 存路径。返回的类文件对象有一个file属性,它指向真正操作的底层的file对象。

tempfile.NamedTemporaryFile([mode='w+b'[, bufsize=-1[, suffix=''[, prefix='tmp'[, dir=None[, delete=True]]]]]])

tempfile.NamedTemporaryFile函数的行为与tempfile.TemporaryFile类似,只不过它多了一个delete 参数,用于指定类文件对象close或者被del之后,是否也一同删除磁盘上的临时文件(当delete = True的时候,行为与TemporaryFile一样)。

tempfile.SpooledTemporaryFile([max_size=0[, mode='w+b'[, bufsize=-1[, suffix=''[, prefix='tmp'[, dir=None]]]]]])

tempfile.SpooledTemporaryFile函数的行为与tempfile.TemporaryFile类似。不同的是向类文件对象写数 据的时候,数据长度只有到达参数max_size指定大小时,或者调用类文件对象的fileno()方法,数据才会真正写入到磁盘的临时文件中

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python实现爬取知乎神回复简单爬虫代码分享
Jan 04 Python
栈和队列数据结构的基本概念及其相关的Python实现
Aug 24 Python
在python3环境下的Django中使用MySQL数据库的实例
Aug 29 Python
Python+matplotlib实现计算两个信号的交叉谱密度实例
Jan 08 Python
python实现将汉字保存成文本的方法
Nov 16 Python
使用PyQt4 设置TextEdit背景的方法
Jun 14 Python
python中pip的使用和修改下载源的方法
Jul 08 Python
Python实现直方图均衡基本原理解析
Aug 08 Python
PyTorch中Tensor的维度变换实现
Aug 18 Python
Python3 tkinter 实现文件读取及保存功能
Sep 12 Python
python使用opencv实现马赛克效果示例
Sep 28 Python
高考要来啦!用Python爬取历年高考数据并分析
Jun 03 Python
python里dict变成list实例方法
Jun 26 #Python
Python音频操作工具PyAudio上手教程详解
Jun 26 #Python
python3中类的继承以及self和super的区别详解
Jun 26 #Python
对Python中class和instance以及self的用法详解
Jun 26 #Python
Python中的支持向量机SVM的使用(附实例代码)
Jun 26 #Python
对python 中class与变量的使用方法详解
Jun 26 #Python
python 机器学习之支持向量机非线性回归SVR模型
Jun 26 #Python
You might like
php ignore_user_abort与register_shutdown_function 使用方法
2009/06/14 PHP
详解PHP执行定时任务的实现思路
2015/12/21 PHP
jquery 元素相对定位代码
2010/10/15 Javascript
一个轻量级的javascript库 pj介绍
2010/12/19 Javascript
javascript将url中的参数加密解密代码
2014/11/17 Javascript
jQuery中prop()方法用法实例
2015/01/05 Javascript
jQuery自定义动画函数实例详解(附demo源码)
2015/12/10 Javascript
深入理解nodejs中Express的中间件
2017/05/19 NodeJs
Vue结合SignalR实现前后端实时消息同步
2017/09/19 Javascript
解决VUEX兼容IE上的报错问题
2018/03/01 Javascript
vue.js实现格式化时间并每秒更新显示功能示例
2018/07/07 Javascript
jQuery实现监听下拉框选中内容发生改变操作示例
2018/07/13 jQuery
微信小程序实现顶部下拉菜单栏
2018/11/04 Javascript
JQuery Ajax跨域调用和非跨域调用问题实例分析
2019/04/16 jQuery
Vue脚手架编写试卷页面功能
2020/03/17 Javascript
javascript设计模式 ? 桥接模式原理与应用实例分析
2020/04/13 Javascript
vue 清空input标签 中file的值操作
2020/07/21 Javascript
angular8.5集成TinyMce5的使用和详细配置(推荐)
2020/11/16 Javascript
[03:30]DOTA2完美“圣”典精彩集锦
2016/12/27 DOTA
详细讲解用Python发送SMTP邮件的教程
2015/04/29 Python
Python while 循环使用的简单实例
2016/06/08 Python
Python 专题四 文件基础知识
2017/03/20 Python
python+selenium实现登录账户后自动点击的示例
2017/12/22 Python
Python基于递归算法实现的汉诺塔与Fibonacci数列示例
2018/04/18 Python
关于Python3爬虫利器Appium的安装步骤
2020/07/29 Python
python opencv实现简易画图板
2020/08/27 Python
详解python模块pychartdir安装及导入问题
2020/10/22 Python
英国打印机墨水和碳粉商店:Printerinks
2017/06/30 全球购物
Solaris操作系统的线程机制
2012/12/23 面试题
服装公司总经理岗位职责
2013/11/30 职场文书
高中生毕业自我鉴定范文
2013/12/22 职场文书
先进班级集体事迹材料
2014/01/30 职场文书
五一手机促销方案
2014/03/08 职场文书
办公设备采购方案
2014/03/16 职场文书
公司庆典主持词
2015/07/04 职场文书
Python获取指定日期是"星期几"的6种方法
2022/03/13 Python