小编典典

在 Python 中获取临时目录的跨平台方法

all

temp 在 Python 2.6 中 是否有跨平台获取目录路径的方法?

例如,在 Linux 下将是/tmp,而在 XP 下C:\Documents and settings\[user]\Application settings\Temp


阅读 123

收藏
2022-04-12

共1个答案

小编典典

那将是tempfile模块。

它具有获取临时目录的功能,并且还具有一些快捷方式来在其中创建临时文件和目录,无论是命名的还是未命名的。

例子:

import tempfile

print tempfile.gettempdir() # prints the current temporary directory

f = tempfile.TemporaryFile()
f.write('something on temporaryfile')
f.seek(0) # return to beginning of file
print f.read() # reads data back from the file
f.close() # temporary file is automatically deleted here

为了完整起见,根据文档,这是它搜索临时目录的方式:

  1. TMPDIR由环境变量命名的目录。
  2. TEMP由环境变量命名的目录。
  3. TMP由环境变量命名的目录。
  4. 特定于平台的位置:
    • RiscOS 上Wimp$ScrapDir,由环境变量命名的目录。
    • Windows 上,目录C:\TEMPC:\TMP\TEMP\TMP, 按此顺序排列。
    • 在所有其他平台上,目录/tmp/var/tmp/usr/tmp, 按此顺序排列。
  5. 作为最后的手段,当前工作目录。
2022-04-12