百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

Python技能:TempFile自动管理临时文件和目录

off999 2024-11-11 12:44 22 浏览 0 评论

前面钢铁老豆给大家介绍了Python是如何进行文件、目录和路径相关操作的。

今天,延续这个话题,我们来讲讲临时文件、目录的创建和删除,尤其适用于那些需要临时存储数据但不想把数据永久保存到硬盘上的场合,这就像是Python给你的一个隐形的小盒子,你可以随时向里面丢东西,用完后盒子就自动消失不见了。

所以主角就是Python的内置模块:tempfile。

0.tempfile模块介绍

tempfile模块提供了一系列创建临时文件和目录的方法。这些临时文件和目录在用完后可以被轻松删除,这样就不会留下垃圾数据,维护系统的干净整洁。

1.快速用法

钢铁老豆,习惯按文件或目录、退出是否自动删除,分成4种情况:

1.1 创建临时文件 + 自动删除 (对象关闭或程序退出时)

import tempfile

# with tempfile.TemporaryFile() as temp:  # 文件系统中不可见 (非隐藏文件)
# with tempfile.SpooledTemporaryFile(max_size=1000) as temp:  # 文件系统中不可见 (非隐藏文件),超过大小阈值(如1000字节)后,将从内存转存至磁盘,后续读写全部基于磁盘,不再回到内存
with tempfile.NamedTemporaryFile() as temp:  # 文件系统中可见
    print(temp)
    print(temp.name)  # 对于TemporaryFile、SpooledTemporaryFile没有实际意义
    temp.write(b'Hello World!')
    temp.seek(0)  # 将文件指针重新定位到文件开头
    print(temp.read())
    # temp.close()

1.2 创建临时目录 + 自动删除 (对象关闭或程序退出时)

import tempfile

with tempfile.TemporaryDirectory() as tempdir:
    print(tempdir)
    # tempdir.cleanup()

1.3 创建临时文件 + 不自动删除 (对象关闭或程序退出时)

import tempfile
import os

fd, path = tempfile.mkstemp()
try:
    with os.fdopen(fd, 'w') as tmp:
        tmp.write('Hello world!')
finally:
    os.remove(path)

1.4 创建临时目录 + 不自动删除 (对象关闭或程序退出时)

import tempfile
import shutil

path = tempfile.mkdtemp()
try:
    print('temp dir:', path)
finally:
    shutil.rmtree(path)

上面这4种情况,都可以通过参数指定前缀、后缀和保存目录

  • prefix:临时文件或目录的前缀
  • suffix:临时文件或目录的后缀
  • dir:临时文件/目录的保存目录,注意保存目录必须存在,且有相应权限
import tempfile

# 创建一个有指定前缀和后缀的临时文件,该文件在指定的目录下
with tempfile.NamedTemporaryFile(prefix="pre_", suffix="_suf", dir=".") as temp:
    print(temp.name)

# 创建一个有指定前缀的临时目录,该目录在指定的位置下
with tempfile.TemporaryDirectory(prefix="pre_", suffix='_suf', dir=".") as tempdir:
    print(tempdir)

好了,以上就是今天的内容,希望能帮你解决在Python项目中处理临时文件和目录的需求。如果你有什么问题或者想要了解更多关于Python的知识,记得留言讨论哦。

欢迎点赞+收藏+评论+关注,每天学习一点Python小知识,无论基础、模块、数据分析、深度学习和AI,总有你感兴趣的。我是钢铁老豆,一个30岁转行IT、自学成为算法工程师、想用Ai点亮孩子小小世界的Pythoner。

相关推荐

wps电脑版官方下载(wps电脑版官方下载入口)
  • wps电脑版官方下载(wps电脑版官方下载入口)
  • wps电脑版官方下载(wps电脑版官方下载入口)
  • wps电脑版官方下载(wps电脑版官方下载入口)
  • wps电脑版官方下载(wps电脑版官方下载入口)
木马查杀软件下载(常用的木马查杀工具)

若需鉴定手机是否有病毒,建议您:1.部分手机支持智能管理器(内存管理器),可以通过其中的"设备安全"扫描设备,对设备内存进行检测,查找设备是否存在威胁或有恶意软件。2....

免费ppt软件官方下载(免费ppt软件有哪些)
免费ppt软件官方下载(免费ppt软件有哪些)

1.第一个是优品ppt,首先网站设计的很漂亮,ppt的质量不错,重点是免费;2.第二个是51ppt,里面的模板也都可以免费下载,可以说是非常的良心了,...3.第三个是officeplus,是office的官方网站,出品的模板质量不错,.....

2026-01-17 08:51 off999

免费下载电影的网站(免费下载电影的网站或者app)
免费下载电影的网站(免费下载电影的网站或者app)

电影天堂很多高清电影可以下载1.打开片库网,点击需要下载的影视进入。2.进入到视频播放页面,直接点击屏幕中的下载按钮即可.在电驴里面有这种蓝光电影,你可以去下载。以前用过一个80s电影网,不知道现在还能不能用了,好久没用了,刚出的电影也有的...

2026-01-17 08:43 off999

ie浏览器官网入口(ie浏览器中文版官方下载)

没有手机版本的IE浏览器,所以就没有官方入口这一说法。用户还是使用手机自带的浏览器,或者在应用商店中下载其他的浏览器,比如夸克浏览器、X浏览器、QQ浏览器等等。1、进入手机浏览器,选择三字形的按钮。...

电信宽带测速手机版(中国电信宽带测速器)

可以使用网速测试工具进行测速。一般来说,打开浏览器,输入“速度测试”或“网速测试”等关键词,选择一个网速测试网站进行测速即可。测试时需确保关闭所有下载、上传、在线观看视频等网络活动,以免干扰测速结果...

用自己名字设计logo免费(店名设计logo免费生成器)

进入短信--设置--我的头像选择一照片设置即可微信在名字里加上小图标的步骤如下:1丶打开手机微信,在微信聊天框中输入你包含小图标的昵称,并长按复制。2丶之后点击微信中的设置选项。3丶点击红框中的昵称...

网页制作app手机版(网页在线制作app)

有区别图虫网登录麻烦,图虫app方便图虫网是一个专业摄影网站,有数十个摄影相关社区,有各个题材的图库,有大量注册摄影师上传照片并展示。优秀摄影作品可以出售卖钱。需要电脑网页登录。《图虫》APP是今日头...

ae剪辑软件下载(ae剪辑软件下载包)

如果你手头的插件正好是.aex后缀的话,直接复制到“X:\AdobeAfterEffectsCS4\SupportFiles\Plug-ins”里面。如果是.ffx的话那么这就是预置(可以直接用的加上...

google map下载(googlemap下载官网)

国内封杀了谷歌的,你打开就是空白什么也看不到的,网络需要使用VPN连接就可以使用了的,另外如果你要看卫星地图,不是下载那个谷歌地图,而是下载那个谷歌地球,但是使用的时候也是需要使用VPN连接的网络,首...

免费秒玩小游戏的网站(无需登录网页小游戏网站)
免费秒玩小游戏的网站(无需登录网页小游戏网站)

是的,秒玩小游戏是不需要下载的,因为秒玩小游戏有固定的系统承包,系统会帮助运行在手机上,所以秒玩小游戏是不需要玩家自己进行下载就可以进行游玩的斗鱼狼人杀游戏入口在哪里?想要找到这款游戏的话,我首先我们点开头条,然后找到任务。然后找到任务之后...

2026-01-17 06:51 off999

变态游戏盒子排行榜第一(最新变态游戏盒子)

如需下载第三方应用软件(好玩的游戏、常用工具应用、系统辅助工具等),建议可以通过自带的应用商店或手机论坛等搜索目前较为热门的软件。1、若您的手机自带应用商店,可以按照如下方式查找:应用程序-应用商店-...

手机同屏软件免费下载(同屏软件免费版)
  • 手机同屏软件免费下载(同屏软件免费版)
  • 手机同屏软件免费下载(同屏软件免费版)
  • 手机同屏软件免费下载(同屏软件免费版)
  • 手机同屏软件免费下载(同屏软件免费版)
东北大智慧手机版下载最新(东北大智慧安卓版)

上网下升级版安装包可以了

psp3000十大最耐玩的游戏(psp3000游戏排行榜)

有很多经典耐玩的游戏,包括《怪物猎人自由2》、《勇者斗恶龙IX》、《战神》、《上古卷轴:奥布里维恩》等等。 其中,《怪物猎人自由2》是一款非常有趣的动作游戏,游戏中玩家需要探索各种地图,与各...

取消回复欢迎 发表评论: