无法在virtualenv中导入模块

时间:2014-08-29 20:14:59

标签: python packages

我是Python和Web开发的新手。我创建了一个Python项目,现在我想导入一个外部库。

我想导入apans-client库,这就是我所做的:

  1. https://pypi.python.org/pypi/apns-client
  2. 下载并解压缩包
  3. 在命令行上安装软件包:

    $ cd apns-client-0.2.1  
    $ /Users/myuser/env/bin/python setup.py install  
    

    安装运行并且似乎成功完成:

    running install  
    running bdist_egg  
    running egg_info  
    writing requirements to apns_client.egg-info/requires.txt  
    ..  
    ..  
    ..  
    Installed /Users/myuser/env/lib/python2.7/site-packages/pycparser-2.10-py2.7.egg
    Finished processing dependencies for apns-client==0.2.1  
    

    此处env是一个virtualenv文件夹,我的项目位于该文件夹中。

  4. 但是如果我将import apnsclient添加到我的一个脚本并尝试运行它,那么我会收到错误:

     No module named apnsclient.
    

    我错过了什么?

    更新

    我使用PyCharm,Project Interpreter指向不同的Python安装:

    /Library/Framework/Python.framework/3.4/bin/python3
    

    我将路径更改为~/env,但后来出现以下错误:

      

    模块失败
      在~/env的Python 2.7.8 virtualenv
       - 导航
      当模块时,将再次尝试为上述模块生成骨架   更新或新版本的发电机可用。

2 个答案:

答案 0 :(得分:1)

首先激活你的virtualenv,然后安装apans-client:

 $ cd /Users/myuser/env
 $ source bin/activate
 $ cd /path/to/apns-client-0.2.1  
 $ python setup.py install # Activating the virtualenv should ensure correct python is used

答案 1 :(得分:0)

我使用PyCharm,感谢我在这里发表的所有评论,我注意到Project Interpreter指向的是与〜/ env中不同的Python安装。

更改后,问题得到解决。