保存时导入不同版本的脚本的中央控制

时间:2018-08-25 14:50:30

标签: python python-import

每次改进代码时,由于流程和其他功能的重大结构变化,我保存并添加了新的数字...

所以当我使用代码时,它看起来像这样:

import custom3 as c

function = c.do_thing()

保存到custom4时,我将其更改为

import custom4 as c

function = c.do_thing()

非常简单的更新。

我的问题是我有许多使用import custom# as c的脚本,因此在更新版本号时,我必须返回并在各处更改编号。

是否有一种方法可以对此进行集中控制?基本上是使用其他脚本动态导入库吗?我想我可以使用modules = map(__import__, moduleNames)之类的东西并保留最新版本的电子表格?并编写脚本来每次都首先访问该文件?

有人能实施其他更优雅的方法吗?

2 个答案:

答案 0 :(得分:2)

专业人员使用的方法不是为不同版本创建不同的模块,而是使用版本控制系统来管理和跟踪对同一模块的更改。

一个好的版本控制系统将执行以下操作:

  • 允许您保留并查看模块更改的历史记录

  • 允许您使用有意义的注释标记版本,例如
    “开发”,“发布”

  • 允许您从错误中恢复并更早恢复到另一个状态 版本而无需重写代码

  • 允许您与其他开发人员共享您的工作。

有许多可用的版本控制系统,有些是专有许可的,而另一些则是免费的。 Git可能是当前最受欢迎的开源系统,并且可以从一个单独的开发人员扩展到一个庞大的团队。另外,Github已经提供了一个完整的代码共享生态系统。

在学习编程时,花点时间学习和使用版本控制。你不会后悔的。

答案 1 :(得分:0)

您可以使用importlib

import importlib
version = "3"
c = importlib.import_module("custom"+version)

function = c.do_thing()

但是,是的,正如评论中所建议的那样,请使用某些文件版本控制系统,例如git。学习曲线有些陡峭,但是它将使您的生活更加轻松。