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实现去除代码前行号的方法
Mar 10 Python
Python中random模块生成随机数详解
Mar 10 Python
深入理解 Python 中的多线程 新手必看
Nov 20 Python
Python实现按当前日期(年、月、日)创建多级目录的方法
Apr 26 Python
Pandas 合并多个Dataframe(merge,concat)的方法
Jun 08 Python
Python中创建二维数组
Oct 17 Python
Python生成一个迭代器的实操方法
Jun 18 Python
Python 动态变量名定义与调用方法
Feb 09 Python
Python关于__name__属性的含义和作用详解
Feb 19 Python
Python 实现敏感目录扫描的示例代码
May 21 Python
Softmax函数原理及Python实现过程解析
May 22 Python
Python绘制数码晶体管日期
Feb 19 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
Netflix将与CLAMP、乙一以及冲方丁等6名知名制作人合伙展开原创动画计划!
2020/03/06 日漫
如何利用php+mysql保存和输出文件
2006/10/09 PHP
用PHP读取RSS feed的代码
2008/08/01 PHP
PHP is_subclass_of函数的一个BUG和解决方法
2014/06/01 PHP
PHP实现采集中国天气网未来7天天气
2014/10/15 PHP
PHP实现检测客户端是否使用代理服务器及其匿名级别
2015/01/07 PHP
PHP中实现接收多个name相同但Value不相同表单数据实例
2015/02/03 PHP
Symfony2安装的方法(2种方法)
2016/02/04 PHP
PHP面向对象类型约束用法分析
2019/06/12 PHP
jQuery EasyUI API 中文文档 - TimeSpinner时间微调器
2011/10/23 Javascript
js获取dom的高度和宽度(可见区域及部分等等)
2013/06/13 Javascript
如何设置一定时间内只能发送一次请求
2014/02/28 Javascript
javascript实现左右控制无缝滚动
2014/12/31 Javascript
浅谈JS的基础类型与引用类型
2016/09/13 Javascript
微信小程序之ES6与事项助手的功能实现
2016/11/30 Javascript
利用select实现年月日三级联动的日期选择效果【推荐】
2016/12/13 Javascript
jqGrid翻页时数据选中丢失问题的解决办法
2017/02/13 Javascript
Vue.js 使用v-cloak后仍显示变量的解决方法
2018/11/19 Javascript
解决vue组件没显示,没起作用,没报错,但该显示的组件没显示问题
2020/09/02 Javascript
JS时间戳与日期格式互相转换的简单方法示例
2021/01/30 Javascript
npm全局环境变量配置详解
2020/12/15 Javascript
[00:35]DOTA2上海特级锦标赛 Newbee战队宣传片
2016/03/03 DOTA
[01:01:22]VGJ.S vs OG 2018国际邀请赛淘汰赛BO3 第一场 8.22
2018/08/23 DOTA
[56:13]DOTA2-DPC中国联赛定级赛 LBZS vs Phoenix BO3第一场 1月10日
2021/03/11 DOTA
使用python实现rsa算法代码
2016/02/17 Python
基于Django用户认证系统详解
2018/02/21 Python
使用pandas批量处理矢量化字符串的实例讲解
2018/07/10 Python
python 读取更新中的log 或其它文本方式
2019/12/24 Python
巴西Mr. Cat在线商店:购买包包和鞋子
2019/09/08 全球购物
类的返射机制中的包及核心类
2016/09/12 面试题
自动化专业本科毕业生求职信
2013/10/20 职场文书
电子商务专业个人的自我评价
2013/12/19 职场文书
网络书店创业计划书
2014/02/07 职场文书
计算机科学与技术专业求职信
2014/09/03 职场文书
预备党员考察意见范文
2015/06/01 职场文书
爱国主义电影观后感
2015/06/18 职场文书