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的Tornado框架实现一个简单的WebQQ机器人
Apr 24 Python
python协程用法实例分析
Jun 04 Python
Python删除空文件和空文件夹的方法
Jul 14 Python
浅谈Python 的枚举 Enum
Jun 12 Python
用virtualenv建立多个Python独立虚拟开发环境
Jul 06 Python
pandas.DataFrame 根据条件新建列并赋值的方法
Apr 08 Python
Python 经典面试题 21 道【不可错过】
Sep 21 Python
python挖矿算力测试程序详解
Jul 03 Python
将Pytorch模型从CPU转换成GPU的实现方法
Aug 19 Python
python 命令行传入参数实现解析
Aug 30 Python
pandas中遍历dataframe的每一个元素的实现
Oct 23 Python
Python基于Faker假数据构造库
Nov 30 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运行出现Call to undefined function curl_init()的解决方法
2010/11/02 PHP
php跨站攻击实例分析
2014/10/28 PHP
php实现计数器方法小结
2015/01/05 PHP
php静态文件返回304技巧分享
2015/01/06 PHP
php实现随机生成易于记忆的密码
2015/06/19 PHP
PHP中把对象数组转换成普通数组的方法
2015/07/10 PHP
利用jQuery操作对象数组的实现代码
2011/04/27 Javascript
js制作的鼠标悬浮时产生的下拉框效果
2012/10/27 Javascript
JQuery 中几个类选择器的简单使用介绍
2013/03/14 Javascript
为什么JavaScript没有块级作用域
2016/05/22 Javascript
微信和qq时间格式模板实例详解
2016/10/21 Javascript
详解Vue 动态添加模板的几种方法
2017/04/25 Javascript
Angularjs 事件指令详细整理
2017/07/27 Javascript
JS Thunk 函数的含义和用法实例总结
2020/04/08 Javascript
vue中实现图片压缩 file文件的方法
2020/05/28 Javascript
vue的$http的get请求要加上params操作
2020/11/12 Javascript
JavaScript实现京东快递单号查询
2020/11/30 Javascript
js基于canvas实现时钟组件
2021/02/07 Javascript
[00:12]2018DOTA2亚洲邀请赛 Sccc亮相SOLO赛,今年他又会有什么样的战绩?
2018/04/06 DOTA
python简单程序读取串口信息的方法
2015/03/13 Python
Python数据结构与算法之常见的分配排序法示例【桶排序与基数排序】
2017/12/15 Python
Python中遍历列表的方法总结
2019/06/27 Python
canvas像素点操作之视频绿幕抠图
2018/09/11 HTML / CSS
AVIS安飞士奥地利租车官网:提供奥地利、欧洲和全世界汽车租赁
2016/11/29 全球购物
static全局变量与普通的全局变量有什么区别?static局部变量和普通局部变量有什么区别?static函数与普通函数有什么区别?
2015/02/22 面试题
系统管理员的职责包括那些?管理的对象是什么?
2013/01/18 面试题
如何整合JQuery和Prototype
2014/01/31 面试题
财务分析个人的自荐书范文
2013/11/24 职场文书
《小石潭记》教学反思
2014/02/13 职场文书
党员实事承诺书
2014/03/26 职场文书
研究生毕业自我鉴定范文
2014/03/27 职场文书
商务日语专业毕业生自荐信
2014/03/27 职场文书
公司领导班子对照检查存在问题整改措施
2014/10/02 职场文书
校本研修个人总结
2015/02/28 职场文书
2016年基层党支部书记公开承诺书
2016/03/25 职场文书
写一个Python脚本自动爬取Bilibili小视频
2021/04/24 Python