Python 2.7 用于具有多个模块的项目的Virtualenv

Python 2.7 用于具有多个模块的项目的Virtualenv,python-2.7,virtualenv,Python 2.7,Virtualenv,我正在尝试用Python2从头开始构建一个项目,它的结构如下所示。过去,我创建的项目只有一个层次结构,因此会有一个virtualenv,但是这个项目有多个子包,最好的做法是:在project\u根目录中应该有一个virtualenv,由其中的所有子包共享,或者每个子包都应该有单独的virtualenv project_root/ ├── commons │   ├── hql_helper.py │   ├── hql_helper.pyc │   ├── __init__.py │   └──

我正在尝试用Python2从头开始构建一个项目,它的结构如下所示。过去,我创建的项目只有一个层次结构,因此会有一个
virtualenv
,但是这个项目有多个子包,最好的做法是:在project\u根目录中应该有一个virtualenv,由其中的所有子包共享,或者每个子包都应该有单独的
virtualenv

project_root/
├── commons
│   ├── hql_helper.py
│   ├── hql_helper.pyc
│   ├── __init__.py
│   └── sample_HQL.hql
├── fl_wtchr
│   ├── fl_wtchr_test.py
│   ├── fl_wtchr_test.pyc
│   ├── __init__.py
│   ├── meta_table.hql
│   ├── requirements.txt
│   ├── sftp_tmp
│   ├── sql_test.py
│   └── sql_test.pyc
├── qry_exec
│   ├── act_qry_exec_script.py
│   ├── hive_db.logs
│   ├── params.py
│   └── params.pyc
├── sqoop_a
│   ├── __init__.py
│   └── sqoop.py
└── test.py

可以为每个模块创建单独的虚拟环境;但从根本上说,您希望并期望所有这些代码最终能够在没有virtualenv的情况下运行。您的所有模块都应该能够在顶级虚拟环境中安装的任何组件上运行,因此您应该主要针对这些组件进行测试。

可以为每个模块创建单独的虚拟环境;但从根本上说,您希望并期望所有这些代码最终能够在没有virtualenv的情况下运行。您的所有模块都应该能够在顶级虚拟环境中安装的任何组件上运行,因此这是您应该主要测试的对象。

这不是更好的做法。。。在某个时候,您需要将所有内容导入到一个中。比如说,fl_wtchr_test.py有django 1.8,如果您在另一个模块上保留不同的版本。导入期间,最小值将覆盖,模块表示每个py文件不是folder@MohideenbinMohammed好的,我会将模块更新为子包,你们能进一步阐述你们的方法吗?这不是一个更好的实践。。。在某个时候,您需要将所有内容导入到一个中。比如说,fl_wtchr_test.py有django 1.8,如果您在另一个模块上保留不同的版本。导入期间,最小值将覆盖,模块表示每个py文件不是folder@MohideenbinMohammed好的,我会将模块更新为子包,您能进一步说明您的方法吗?