2024-04-25 19:29:09 发布
网友
使用操作系统模块更改目录时,将全局进行更改。有办法在本地更改目录吗?你知道吗
你知道吗编辑:是,对不起。在另一个线程中本地。当您使用thread模块时,普通chdir会更改所有线程的工作目录。你知道吗
使用^{}编写装饰器/上下文管理器并不是很难做到这一点。你知道吗
import contextlib2 import os @contextlib2.contextmanager def restore_chdir(dir_): orig= os.getcwd() os.chdir(dir_) try: yield finally: os.chdir(orig)
现在可以将其用作:
with restore_chdir('/foo'): ...
或者作为一个功能装饰。你知道吗
您可以简单地用os模块定义一个函数,它可以还原目录。你知道吗
os
import os def func(): original = os.getcwd() os.chdir("Your Directory Name") ## Do something here os.chdir(original)
使用^{} 编写装饰器/上下文管理器并不是很难做到这一点。你知道吗
现在可以将其用作:
或者作为一个功能装饰。你知道吗
您可以简单地用
os
模块定义一个函数,它可以还原目录。你知道吗相关问题 更多 >
编程相关推荐