Python 父目录或者同级目录下的模块怎么调用??

A目录
a.py

------B目录
b.py

------C目录
c.py

b.py 怎么去调用 a.py c.py

学python 写个东西,想把主要功能分类下,分成几个模块包,但模块包之间又有共同数据需要用,不能直接调用模块,调用同级目录,或者父母下模块,好像也比较麻烦呢

有什么更好的方法吗???

调用同级目录下的模块是比较简单的,直接用import。
设同一目录下有两个脚本 a.py b.py,在b里调用a的函数func,则b.py代码如下:
import a
a.fun(...)
就可以了追问

我指的是 B,C 两个目录同级,不是 b.py c.py 在同一目录下,同一目录下就不麻烦了

追答

那就得把目录B变成python的module。
方法是,在目录B里加一个__inti__.py文件,内容可以留空。
假设b.py里有个函数叫func,则在a.py里调用的方法:
from B.b import func
func(...)

追问

你没明白我的意思,你说的我知道

温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-11-17
首先b.py中调用a.py和c.py的方法是:在b.py中直接使用
from A.a import *
from C.c import *
这样就可以在b中使用a和c下面的方法或者是全局变量。
然后是模块包的调用问题:
首先你可以在一个总的包下面创建一个.py文件,这里面存放公共的数据,然后再在这个总的包下面创建其余的各个功能模块的包,这样你就可以在下面的这些小包中直接调用总包下面的公共数据。
第2个回答  2017-08-22
先在A,C目录下添加__init__.py文件
然后在b.py头上添加以下内容

import sys

sys.path.append(lib_path) //lib_path 为a.py或c.py的路径
from B.b import xxx
相似回答