我有一个很大的设置的大型C / C ++项目。为了简化不同变体和配置的构建过程,我以模块的形式编写了Python脚本。
所以在项目根目录中我有这个helpers
文件夹。我需要设置我的工作环境的唯一方法是将我的PYTHONPATH
变量设置为我的Git根文件夹:
export PYTHONPATH=$(git rev-parse --show-toplevel)
这让我可以访问我的帮助模块,但我怀疑这是最好的选择。
什么是它的好选择?
答案 0 :(得分:1)
一种替代方法是将模块组织为命令。
你可以制作一个主脚本,比如说main.py
,并在你的bin
中建立一个链接:
user@host:home/user/bin$ ln ~/my_module/main.py buildhelper
然后使main.py
可执行文件:更改其权限,并添加#!/usr/bin/env python
作为其第一行。
user@host:~/$ chmod 755 ~/my_module/main.py
现在您可能需要您的脚本来解析控制台参数,以便调用不同的功能。您的main.py
可能如下所示:
import my_module
import sys
def setup(*args):
pass
def build(*args):
pass
if __name__ == '__main__':
if len(sys.argv) == 1:
print("No function requested")
elif sys.argv[1] == 'setup':
setup(*argv[1:])
elif sys.argv[1] == 'build':
build(*argv[1:])
else:
print("Invalid function")
然后,您可以通过以下命令调用模块的函数:
user@host:/anywhere$ buildhelper setup
user@host:/anywhere$ buildhelper build
<强>赞成强>
<强>缺点强>