2016-09-30 63 views
0

我遇到了一个非常奇怪的python导入问题。我写我自己的回购协议,并使用一个setup.py脚本来设置导入路径,脚本如下:无法通过库名导入,即使我已经用python setup.py开发它

#!/usr/bin/env python 
# -*- coding: utf-8 -*- 
from __future__ import print_function 
from __future__ import division 
from __future__ import absolute_import 
from __future__ import unicode_literals 

from setuptools import setup, find_packages 

__author__ = 'Shaun Rong' 
__version__ = '0.1' 
__maintainer__ = 'Shaun Rong' 
__email__ = '[email protected]' 

if __name__ == "__main__": 
    setup(name='Quantomic', 
      version=__version__, 
      author="Ziqin (Shaun) Rong, Wenxuan Huang", 
      author_email="[email protected] [email protected]", 
      license="MIT License", 
      packages=find_packages(), 
      zip_safe=False) 

我用python setup.py develop运行代码。然而现在,我可以不上名字导入全库Quantomic,像

import Quantomic 

from Quantomic import settings 

任何代码将引发错误:ImportError: No module named Quantomic

我有一个__init__.py下的库根,我检查了sys.path/Users/shaunrong/Documents/projects/Quantomic是在路径中。

,不过我会,可以导入使用内部Quantomic任何代码相对路径,使用像

import settings 

将工作确定。

谁能告诉我发生了什么事?我很乐意根据要求提供更多信息!

UPDATE

文件/文件夹结构如下:

/Quantomic 
    __init__.py 
    settings.py 
    /data 
     __init__.py 
     price.py 
+0

你的文件/文件夹结构看起来像什么 –

+0

@BrendanAbel刚刚添加了更新 –

+0

其中是该结构中的安装文件? –

回答

1

setup.py文件是错误的目录。这里是你的文件夹结构

/Quantomic 
    setup.py 
    __init__.py 
    settings.py 
    /data 
     __init__.py 
     price.py 

它应该是这样的

/Quantomic (can be named anything) 
    setup.py 
    /Quantomic 
     __init__.py 
     settings.py 
     /data 
      __init__.py 
      price.py 

当你最后一次运行setup.py,很可能安装了data库到你的Python安装。或者,因为您使用了develop,所以在python libs文件夹中使用pth文件将以上的路径添加到pythonpath。

+0

非常感谢您的帮助!解决了它。 –