python本地模块
发布时间:2020-09-25 05:36:41  所属栏目:Python  来源:互联网 
            导读:我有几个项目目录,并希望拥有特定于它们的库/模块.例如,我可能有这样的目录结构: myproject/ mymodules/ __init__.py myfunctions.py myreports/ mycode.py 假设myfunctions.py中有一个名为add的函数,我可以使用最天真的例程从mycode.py调用它: execfile(..
                
                
                
            | 
                         我有几个项目目录,并希望拥有特定于它们的库/模块.例如,我可能有这样的目录结构: myproject/
  mymodules/
    __init__.py
    myfunctions.py
  myreports/
    mycode.py 
 假设myfunctions.py中有一个名为add的函数,我可以使用最天真的例程从mycode.py调用它: execfile('../mymodules/myfunctions.py')
add(1,2) 
 但是为了更加成熟,我也可以做到 import sys
sys.path.append('../mymodules')
import myfunctions
myfunctions.add(1,2) 
 这是最惯用的方式吗?还有一些提到修改PYTHONPATH(os.environ [‘PYTHONPATH’]?),但是我应该研究这个或其他什么? 另外,我看到包含在类语句中的import语句,以及在包含类定义的Python文件顶部定义的其他实例中.有没有正确/首选的方式来做到这一点? 解决方法除非有一些非常好的理由,否则不要乱用execfile或sys.path.append.相反,只需将您的代码安排到 proper python packages中,就像进行任何其他库一样进行导入.如果你的mymodules实际上是一个大型项目的一部分,那么设置你的包就像这样: myproject/
    __init__.py
    mymodules/
        __init__.py
        myfunctions.py
    myreports/
        __init__.py
        myreportscode.py 
 然后你可以从代码中的任何地方导入mymodules,如下所示: from myproject.mymodules import myfunctions myfunctions.add(1,2) 如果您的mymodules代码由许多独立且不同的项目使用,那么只需将其置于一个包中并将其安装到需要使用的任何环境中. (编辑:莱芜站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!  | 
                  
相关内容
