如何从其他文件夹访问模块?
这是文件结构:
/<appname>
/config
__init__.py
config.py
/test
test.py # I'm here
Run Code Online (Sandbox Code Playgroud)
我想从test.py中访问config.py中的函数.我该怎么做?
这是我的导入:
import config.config
Run Code Online (Sandbox Code Playgroud)
当我运行test.py脚本时,它总会说:
ImportError: No module named config.config
Run Code Online (Sandbox Code Playgroud)
我做错什么了吗?
aru*_*nte 20
最简单的方法是修改sys.path变量(它定义导入搜索路径):
# Bring your packages onto the path
import sys, os
sys.path.append(os.path.abspath(os.path.join('..', 'config')))
# Now do your import
from config.config import *
Run Code Online (Sandbox Code Playgroud)
将 app 目录添加到模块搜索路径。
例如:
PYTHONPATH=/path/to/appname python test.py
Run Code Online (Sandbox Code Playgroud)
Yo只能导入您的环境可见的模块.您可以使用此检查环境.
import sys
print sys.path
Run Code Online (Sandbox Code Playgroud)
正如您将看到的,sys.path是一个列表,因此您可以向其追加元素:
sys.path.append('/path_to_app/config')
Run Code Online (Sandbox Code Playgroud)
你应该能够导入你的模块.
顺便说一句:关于这一点有很多问题.
| 归档时间: |
|
| 查看次数: |
24248 次 |
| 最近记录: |