tempfile 模块,生成临时文件夹或文件,所生成的文件(夹)的名字都是随机的,但可以指定前缀、后缀和路径,中间由6位随机字符组成。应用程序经常要保存一些临时的信息,这些信息不是特别重要,没有必要写在配置文件里,但又不能没有,这时候就可以把这些信息写到临时文件里。

模块方法:

tempfile.mkstemp([suffix=''[, prefix='tmp'[, dir=None[, text=False]]]]):在指定的 dir 下创建一个临时文件,suffix 指定后缀,要自己带上“.”,prefix 指定前缀,text 指定文件读写形式,False 为以二进制形式读写。在临时文件读写完毕后,要手动关闭并删除它,不会自动执行
tempfile.TemporaryFile([mode='w+b'[, bufsize=-1[, suffix=''[, prefix='tmp'[, dir=None]]]]]):创建一个没名字的临时文件(file-like object),会在文件被关闭后自动删除,mode 指定操作文件模式,bufsize 指定缓冲大小,-1 代表系统的默认值
tempfile.NamedTemporaryFile([mode='w+b'[, bufsize=-1[, suffix=''[, prefix='tmp'[, dir=None[, delete=True]]]]]]):创建一个有随机名字的临时文件(file-like object),可以指定是否在关闭后删除,其余与 TemporaryFile 方法一样
tempfile.SpooledTemporaryFile([max_size=0[, mode='w+b'[, bufsize=-1[, suffix=''[, prefix='tmp'[, dir=None]]]]]]):与 TemporaryFile 方法类似。不同的是向类文件对象写数据的时候,数据长度只有到达参数 max_size 指定大小时,或者调用类文件对象的 fileno()方法,数据才会真正写入到磁盘的临时文件中
tempfile.mkdtemp([suffix=''[, prefix='tmp'[, dir=None]]]):创建临时文件夹,用完后要手动删除
tempfile.gettempdir():返回当前选择的临时文件的默认创建路径
tempfile.gettempprefix():返回创建临时文件的默认前缀

模块属性:

tempfile.tempdir:设置默认的临时文件创建路径,不推荐直接修改,要在调用各个方法时指定。默认路径优先次序:环境变量TMPDIR,环境变量TEMP,环境变量TMP,C:\TEMP,当前工作路径

Python2.7-tempfile的更多相关文章

  1. Cinder 调试 - 无法挂载到虚拟机

    1.问题 我们有时候在通过云主机挂载云硬盘的时候会出现挂载不上的问题.像这中问题有多种情况导致的. 看一下我遇到的两种情况. 1.权限问题 在cinder节点查看 /var/log/cinder/ci ...

  2. CentOS升级Python2.7导致使用pip等命令安装模块失败

    报错如下: # pip Traceback (most recent call last): File , in <module> from pkg_resources import lo ...

  3. 关于python 文件操作os.fdopen(), os.close(), tempfile.mkstemp()

    嗯.最近在弄的东西也跟这个有关系,由于c基础渣渣.现在基本上都忘记得差不多的情况下,是需要花点功夫才能弄明白. 每个语言都有相关的文件操作. 今天在flask 的例子里看到这样一句话.拉开了文件操作折 ...

  4. selenium python2.7安装配置

    1:安装python python2.7版本(最新的python版本是3.4,但用户体验没有2.7版本的好,我们选择用2.7版本) 下载地址:https://www.python.org/downlo ...

  5. 让VIM支持Python2 by update-alternatives

    前言  Ubuntu 16+中$ sudo apt install vim所安装的vim只支持Python3,但很多插件如YCM和powerline均需要Python2,那就来场"生命贵在折 ...

  6. 烂泥:python2.7和python3.5源码安装

    本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我的微信ilanniweb 前几天在centos6.6安装ansible时,一直提示python版本不对,导致不能安 ...

  7. python版本随意切换之python2.7+django1.8.7+uwsgi+nginx源码包部署。

    资源准备: wget https://www.python.org/ftp/python/2.7.13/Python-2.7.13.tgz wget https://www.djangoproject ...

  8. windows XP上实现python2.7.5和python3.4.3共存

    windows XP上实现python2.7.5和python3.4.3共存过程记录: 1. 首先安装python2.7.5和python3.4.3,两个版本安装顺序不分前后; 2. 检查系统环境变量 ...

  9. Python2 基本数据结构源码解析

    Python2 基本数据结构源码解析 Contents 0x00. Preface 0x01. PyObject 0x01. PyIntObject 0x02. PyFloatObject 0x04. ...

  10. Ubuntu安装Python2.7,nodejs

    安装Python2.7 sudo add-apt-repository ppa:fkrull/deadsnakes-python2.7sudo apt-get update sudo apt-get ...

随机推荐

  1. JS 闭包 p5

    终于到闭包了,写了一晚上,好激动: 首先闭包,个人是这样理解的(比较好记):闭包是一种能力,是一种可以访问内部函数作用域的能力或者说是一种行使权力,一旦你拥有这个能力,你将可以访问内部函数的作用域.

  2. [USACO18FEB]Slingshot

    题意可化为: 在二维平面中有n个点,坐标为\((x_i,y_i)\),点权为\(t_i\). 现有m个询问,每次给定点\((x,y)\),求\(\min\{|x-x_i|+|y-y_i|+t_i,|y ...

  3. 高性能JavaScript(加载和执行)

    当浏览器遇到 <script> 标签时,它是没办法知道 JavaScript 是否会向DOM中添加内容或引入其他元素,甚至关闭某一个标签.因此这个时候浏览器就会停止处理页面,先执行Java ...

  4. Hibernate 中配置属性详解(hibernate.properties)

    Hibernate能在各种不同环境下工作而设计的, 因此存在着大量的配置参数.多数配置参数都 有比较直观的默认值, 并有随 Hibernate一同分发的配置样例hibernate.properties ...

  5. Linux下安装VSCode

    进行下载 64位的包:地址: https://code.visualstudio.com/docs/?dv=linux64&build=insiders 1.解压: tar -zxvf cod ...

  6. Retrofit+RxJava(1)-在Android Studio中配置

    在build.gradle中添加 //加入retrolambda需要的plugin声明 apply plugin: 'me.tatarka.retrolambda' //retrolambda的编译路 ...

  7. Python技巧——list与字符串互相转换

    Python技巧——list与字符串互相转换   在Python的编程中,经常会涉及到字符串与list之间的转换问题,下面就将两者之间的转换做一个梳理. 1.字符串转换成list 命令:list() ...

  8. 重学C语言---02C语言概述

    1.第一个C语言实例 #include<stdio.h> int main(void) /*一个简单的C程序*/ { int num; /*定义一个num的变量*/ num = ; /*为 ...

  9. python编写脚本

    #!/usr/bin/env python #-*- coding:utf-8 -*- import sys import os from subprocess import Popen,PIPE c ...

  10. MySQL MTS复制: hitting slave_pending_jobs_size_max

    测试步骤: 从库停止复制:stop slave; 主库创建大表400万条记录. 开启从库复制:start slave; 监测从库error log持续输出: 2018-12-06T10:40:52.6 ...