我想知道是否可以获取使用tempfile库制作的临时文件的文件路径。基本上,我正在尝试制作一个函数,该函数可吸收一些数据,并根据这些数据生成一个临时的csv文件。我想知道是否有办法获取此临时文件的路径?
答案 0 :(得分:2)
使用tempfile.NamedTemporaryFile
创建一个具有名称的临时文件,然后使用对象的.name
属性。
请注意,此名称的使用方式受到特定于平台的限制。 documentation说:
该名称是否可用于第二次打开文件,而命名的临时文件仍处于打开状态,在不同的平台上会有所不同(在Unix上可以使用,在Windows NT或更高版本上不能使用)。
答案 1 :(得分:0)
tempfile.NamedTemporaryFile具有.dir属性,该属性将为您提供所需的内容。
编辑:不,它不是.name
,@ Barmar,但是在查看tempfile的源代码时,我也没有看到.dir
属性。但是,您可以将.name
属性与os.path
的{{1}}方法结合使用,如下所示:
dirname
答案 2 :(得分:0)
无论如何,如果您需要 tempfile目录的路径,则可以使用tempfile.gettempdir()
答案 3 :(得分:0)
这可以很好地获取文件名的完整路径
file = tempfile.NamedTemporaryFile()
filename = file.name
输出:
/tmp/tmp_sl4v9ps