python 包导入规则,恶心了一天,终于搞清楚了
1、目录
speed
data
__init__.py
__init__.py
static
templates
view
__init__.py
table_alding_data.py
table_odp_us.py
2、文件
data/initpy
#!/usr/bin/env python
# encoding: utf-8
import json
def get_data(data_name="result"):
data_path="/home/work/opsite/webroot/speed/data/"
res=open(data_path+data_name)
line=res.readline()
line=json.loads(line)
return line
view/table_odp_us.py
#!/usr/bin/env python
# encoding: utf-8
"""
us and odp data process
"""
from view import app
from flask import render_template
from speed.data import get_data
@app.route('/table-odp-us.php')
def create_result():
data=get_data("odp_us_hour.2014120301")
print data
return render_template('line/line.html')
3、说明
在包view中的模块引入包data中的函数(get_data)需要使用全路径:
from speed.data import get_data
使用以下方式不可:
from speed import data
from data import get_data