gpt4 book ai didi

python - 您可以在创建文件后更改 NamedTemporaryFile 的删除标志吗?

转载 作者:太空宇宙 更新时间:2023-11-03 14:32:35 25 4
gpt4 key购买 nike

创建此类文件后如何更改 NamedTemporaryFile 的删除标志?

为什么?虽然大多数时候我不需要保留临时文件,但如果我从代码内部检测到错误,我想保留它们以便能够分析它们。

最佳答案

对于现在用谷歌搜索这个问题的任何人,至少对于 Python 3+,在实例化 NamedTemporaryFile 之后更改 delete 不会改变其初始行为,因为实际标志存储在一个名为 _closer 的对象(它是一个 _TemporaryFileCloser 实例)。请参阅 Python 中的 tempfile.py,作为 official Python docs什么都别提。

因此,您要么更改此未记录 属性:

f = tempfile.NamedTemporaryFile(delete=True)
# f.delete = False # This doesn't change anything
f._closer.delete = False # undocumented
f.close() # the file won't be deleted

或者您始终使用 NamedTemporaryFile(delete=False) 创建,然后如果您不再需要该文件,则手动删除该文件。

关于python - 您可以在创建文件后更改 NamedTemporaryFile 的删除标志吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8154076/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com