编程语言
首页 > 编程语言> > python – 如何编写恢复cwd的装饰器?

python – 如何编写恢复cwd的装饰器?

作者:互联网

如何编写一个装饰器,将当前工作目录恢复到调用修饰函数之前的状态?换句话说,如果我在执行os.chdir()的函数上使用装饰器,则在调用函数后不会更改cwd.

解决方法:

path.py模块(如果在python脚本中处理路径,你真的应该使用它)有一个上下文管理器:

subdir = d / 'subdir' #subdir is a path object, in the path.py module
with subdir:
  # here current dir is subdir

#not anymore

(学分从Roberto Alsina到this blog post)

标签:python,decorator,cwd
来源: https://codeday.me/bug/20190930/1835449.html