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将人民币转换大写的脚本代码
Feb 10 Python
Python入门及进阶笔记 Python 内置函数小结
Aug 09 Python
python实现将pvr格式转换成pvr.ccz的方法
Apr 28 Python
python 上下文管理器使用方法小结
Oct 10 Python
Python通过future处理并发问题
Oct 17 Python
python实现机械分词之逆向最大匹配算法代码示例
Dec 13 Python
Python进程间通信Queue消息队列用法分析
May 22 Python
Python : turtle色彩控制实例详解
Jan 19 Python
Python cookie的保存与读取、SSL讲解
Feb 17 Python
Python使用plt.boxplot() 参数绘制箱线图
Jun 04 Python
python安装读取grib库总结(推荐)
Jun 24 Python
详解用python -m http.server搭一个简易的本地局域网
Sep 24 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
ThinkPHP CURD方法之page方法详解
2014/06/18 PHP
使用xampp搭建运行php虚拟主机的详细步骤
2015/10/21 PHP
php实现与python进行socket通信的方法示例
2017/08/30 PHP
浅谈PHPANALYSIS提取关键字
2019/03/08 PHP
List the Stored Procedures in a SQL Server database
2007/06/20 Javascript
10个基于jQuery或JavaScript的WYSIWYG 编辑器整理
2010/05/06 Javascript
JavaScript Scoping and Hoisting 翻译
2012/07/03 Javascript
JQuery入门——用映射方式绑定不同事件应用示例
2013/02/05 Javascript
跟我学习javascript的函数和函数表达式
2015/11/16 Javascript
浅谈JavaScript中小数和大整数的精度丢失
2016/05/31 Javascript
jQuery如何跳转到另一个网页 就这么简单
2016/12/28 Javascript
Javascript中八种遍历方法的执行速度深度对比
2017/04/25 Javascript
解决vue.js 数据渲染成功仍报错的问题
2018/08/25 Javascript
详解vue使用vue-layer-mobile组件实现toast,loading效果
2018/08/31 Javascript
vue轮播组件实现$children和$parent 附带好用的gif录制工具
2019/09/26 Javascript
JQuery常用选择器功能与用法实例分析
2019/12/23 jQuery
[01:13:59]LGD vs Mineski Supermajor 胜者组 BO3 第三场 6.5
2018/06/06 DOTA
[32:39]完美世界DOTA2联赛循环赛 Forest vs Inki BO2第一场 11.04
2020/11/04 DOTA
python基础教程之分支、循环简单用法
2016/06/16 Python
Python元组及文件核心对象类型详解
2018/02/11 Python
python如何对实例属性进行类型检查
2018/03/20 Python
用Python中的turtle模块画图两只小羊方法
2019/04/09 Python
linux环境下Django的安装配置详解
2019/07/22 Python
python 实用工具状态机transitions
2020/11/21 Python
css3中的calc函数浅析
2018/07/10 HTML / CSS
CSS3 实现时间轴动画
2020/11/25 HTML / CSS
使用canvas绘制超炫时钟
2014/12/17 HTML / CSS
美国照明、家居装饰和家具购物网站:Bellacor
2017/09/20 全球购物
介绍一下Linux文件的记录形式
2012/04/18 面试题
电子商务网站的创业计划书
2014/01/05 职场文书
文明城市标语
2014/06/16 职场文书
学校师德师风整改措施
2014/10/27 职场文书
2015年学校团委工作总结
2015/05/26 职场文书
2019最新版劳务派遣管理制度
2019/08/16 职场文书
话题作文之自信作文
2019/11/15 职场文书
MongoDB数据库部署环境准备及使用介绍
2022/03/21 MongoDB