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生成器(Generator)详解
Apr 13 Python
python类继承与子类实例初始化用法分析
Apr 17 Python
python统计cpu利用率的方法
Jun 02 Python
在主机商的共享服务器上部署Django站点的方法
Jul 22 Python
Python时间的精准正则匹配方法分析
Aug 17 Python
python面向对象入门教程之从代码复用开始(一)
Dec 11 Python
使用Python3内置文档高效学习以及官方中文文档
May 19 Python
python面试题Python2.x和Python3.x的区别
May 28 Python
简单了解python gevent 协程使用及作用
Jul 22 Python
Python多叉树的构造及取出节点数据(treelib)的方法
Aug 09 Python
Python3.7实现验证码登录方式代码实例
Feb 14 Python
新手学习Python2和Python3中print不同的用法
Jun 09 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
MySql 按时间段查询数据方法(实例说明)
2008/11/02 PHP
9个PHP开发常用功能函数小结
2011/07/15 PHP
javascript与CSS复习(《精通javascript》)
2010/06/29 Javascript
JavaScript创建类/对象的几种方式概述及实例
2013/05/06 Javascript
window.onload和$(function(){})的区别介绍
2013/10/30 Javascript
基于jquery插件实现常见的幻灯片效果
2013/11/01 Javascript
基于jquery实现的可编辑下拉框实现代码
2014/08/02 Javascript
jQuery DOM插入节点操作指南
2015/03/03 Javascript
在浏览器中打开或关闭JavaScript的方法
2015/06/03 Javascript
jQuery+CSS实现一个侧滑导航菜单代码
2016/05/09 Javascript
JavaScript中如何使用cookie实现记住密码功能及cookie相关函数介绍
2016/11/10 Javascript
angularjs路由传值$routeParams详解
2020/09/05 Javascript
jQuery Datatables表头不对齐的解决办法
2017/11/27 jQuery
使用Vue自定义数字键盘组件(体验度极好)
2017/12/19 Javascript
vue移动端实现手机左右滑动入场动画
2020/06/17 Javascript
JavaScript布尔运算符原理使用解析
2020/05/06 Javascript
微信小程序连续签到7天积分获得功能的示例代码
2020/08/20 Javascript
[04:45]DOTA2上海特级锦标赛主赛事第四日RECAP
2016/03/06 DOTA
python实现linux服务器批量修改密码并生成execl
2014/04/22 Python
Python中使用Beautiful Soup库的超详细教程
2015/04/30 Python
Python多进程池 multiprocessing Pool用法示例
2018/09/07 Python
解决python打不开文件(文件不存在)的问题
2019/02/18 Python
pandas DataFrame 行列索引及值的获取的方法
2019/07/02 Python
Python autoescape标签用法解析
2020/01/17 Python
Python warning警告出现的原因及忽略方法
2020/01/31 Python
Python使用pdb调试代码的技巧
2020/05/03 Python
Farfetch香港官网:汇集全球时尚奢侈品购物平台
2017/11/26 全球购物
什么是WEB控件?使用WEB控件有哪些优势?
2012/01/21 面试题
女方婚礼新郎答谢词
2014/01/11 职场文书
学生会招新策划书
2014/02/14 职场文书
幼儿园校园小喇叭广播稿
2014/10/17 职场文书
本科毕业论文致谢怎么写
2015/05/14 职场文书
交通安全温馨提示语
2015/07/14 职场文书
品牌形象定位,全面分析
2019/07/23 职场文书
分享几个JavaScript运算符的使用技巧
2021/04/24 Javascript
「魔法少女伊莉雅」美游粘土人开订
2022/03/21 日漫