gpt4 book ai didi

python - 如何使用 python 绳索重构模块?

转载 作者:行者123 更新时间:2023-12-04 18:55:19 25 4
gpt4 key购买 nike

我的项目结构如下

├── app
│   ├── Country
│   │   └── views.py
│   ├── Customer
│   │   └── views.py

我试图将模块“Country”文件夹重命名为“Countries”并使用它,并且它也被导入到 Customer/views.py 中。也是。
from app.Country.views   import *
....

根据本教程 Refactoring Python Applications for Simplicity ,我尝试如下:
>>> from rope.base.project import Project
>>>
>>> proj = Project('app')
>>>
>>> Country = proj.get_folder('Country')
>>>
>>> from rope.refactor.rename import Rename
>>>
>>> change = Rename(proj, Country).get_changes('Countries')
>>> proj.do(change)

执行脚本后,模块文件夹“Country”更改为“Countries”,但其在 Customer/views.py 中使用的实例没有相应更改,Customer/views.py 中的导入语句仍然
from app.Country.views   import *

我预计它应该更改为 from app.Countries.views import *重构后,但它没有。

我还应该做些什么来成功地重构它?谢谢。

最佳答案

您可以使用 proj.get_module('app.Country').get_resource()重命名模块。

from rope.base.project import Project
from rope.refactor.rename import Rename

proj = Project('app')
country = proj.get_module('app.Country').get_resource()
change = Rename(proj, country).get_changes('Countries')
print(change.get_description())

关于python - 如何使用 python 绳索重构模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59117255/

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