2016-02-29 91 views
1

我使用作为临时文件模块这产生在指定位置一个临时目录(使用dir参数)或使用默认TEMPDIR的位置,如果不供给DIR参数中所定义Python的mkdtemp方法。是否可以使用mkdtemp定义临时目录的名称?

我的问题是如果有可能控制创建的tmp目录的名称?例如,我希望能够使用用户名信息创建tempdir。

+2

根据文档,您需要在调用方法时使用'dir':https://docs.python.org/2/library/tempfile.html#tempfile.mkstemp – idjaw

+0

您可以将用户名放入'prefix'还是'suffix'?使用类似'mkdtemp'的全部重点是让它为你选择名称,保证唯一性。 – Chris

+0

提供dir参数后,mkdtemp会在其中创建另一个tmp目录。我的问题是,如果该tmp目录的名称可以由用户控制。 – KanwarG

回答

2

这里的函数签名:

tempfile.mkdtemp([suffix=''[, prefix='tmp'[, dir=None]]]) 

您可以指定一个后缀,前缀,甚至可以选择父目录。

所以,你可以使用suffix = '_john.smith',这将目录中的名称添加用户信息。

如果你想完全指定名称(不只是前缀或后缀),只需使用tempfile.gettempdir()和追加你的名字。

+0

谢谢您的回答!我决定使用dir名称并在前缀中添加用户名信息。 – KanwarG

+1

没问题。如果解决方案适用于您,请记住接受答案(点击复选标记)。它会奖励你自己,并回答几个问题,并向读者表明你的问题已经解决。 – DevShark

相关问题