Python 如何导入a.py而不是文件夹
在a.py中是:Python 如何导入a.py而不是文件夹,python,import,Python,Import,在a.py中是: zjm_code |-----a.py |-----a |----- __init__.py |-----b.py 在b.py中是: c='ccc' ['__builtins__', '__doc__', '__file__', '__name__', 'c'] 当我执行b.py时,它显示(它导入“a”文件夹): 当我删除一个文件夹时,它会显示(它导入一个.py): 所以我的问题是: 如何通过不删除文件夹导入a.py 谢谢 已更
zjm_code
|-----a.py
|-----a
|----- __init__.py
|-----b.py
在b.py中是:
c='ccc'
['__builtins__', '__doc__', '__file__', '__name__', 'c']
当我执行b.py时,它显示(它导入“a”文件夹):
当我删除一个文件夹时,它会显示(它导入一个.py):
所以我的问题是:
如何通过不删除文件夹导入a.py
谢谢
已更新
我使用imp.load_源,因此在b.py中是:
c='ccc'
['__builtins__', '__doc__', '__file__', '__name__', 'c']
现在一切正常,并打印“ccc”
及
如何通过“打印c”显示“ccc”,而不是通过“打印ok.c”
谢谢
更新2
现在没事了:
import imp,os
path = os.path.join(os.path.dirname(__file__), os.path.join('aaa.py'))
ok=imp.load_source('*',path)
print ok.c
它显示“ccc”
更新3
也可以:
imp.load_source('anyname',path)
from anyname import *
print c
将文件夹重命名为其他名称。具有相同名称的文件夹优先。使用
imp.load\u模块
-您可以在其中指定文件目录,覆盖导入行为。具有相同名称的包优先。
import imp,os
imp.load_source('anyname','aaa.py')
from anyname import *
print c