Python 如何在py文件中调用其他py文件内的函数
假设名为A.py的文件需要调用B.py文件内的C(x,y)函数
假如在同一目录下
则只需
import B
if __name__ == "__main__":
B.C(x,y)
如果只需调用单个函数,也可以
from B import C
if __name__ == "__main__":
C(x,y)
如果跨越了层级
同目录下不同子文件夹
直接引用会报错,
test
|- dir
| |- B.py
|- A.py
import dir.b
print dir.b.name
提示找不到这个模块的名字 dir.b 。通过查找官方文档,发现要包含目录下的文件时需要在目录下声明一个__init__.py文件,即使这个文件是空的也可以。当然这个文件也可以初始一些数据。
test
|- dir
| |- B.py
| |- __init__.py
|- A.py
import dir.b
print dir.b.name
重新执行A.py,一切OK!
不同目录下
若A.py和B.py位于不同的目录下,可以用以下方法
(假设B.py位于D盘的根目录下)
引用所在路径
import sys
sys.path.append('D:/')
import B
if __name__=="__main__":
print B.pr(x,y)
使用imp
import imp
B=imp.load_source('B','D:/B.py')
import B
if __name__=="__main__":
print B.pr(x,y)