Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 导入错误:';没有名为'*存在吗_Python_Python Import - Fatal编程技术网

Python 导入错误:';没有名为'*存在吗

Python 导入错误:';没有名为'*存在吗,python,python-import,Python,Python Import,我在启动pyramid pserve时获得此堆栈跟踪: %python$(哪个pserve)…/etc/development.ini 回溯(最近一次呼叫最后一次): 文件“/home/hughdbrown/.local/bin/pserve”,第9行,在 加载入口点('pyramid==1.5','console脚本','pserve')() 文件“/home/hughdbrown/.virtualenvs/pound/local/lib/python2.7/site-packages/pyr

我在启动pyramid pserve时获得此堆栈跟踪:

%python$(哪个pserve)…/etc/development.ini
回溯(最近一次呼叫最后一次):
文件“/home/hughdbrown/.local/bin/pserve”,第9行,在
加载入口点('pyramid==1.5','console脚本','pserve')()
文件“/home/hughdbrown/.virtualenvs/pound/local/lib/python2.7/site-packages/pyramid-1.5-py2.7.egg/pyramid/scripts/pserve.py”,第51行,主视图
return命令。run()
文件“/home/hughdbrown/.virtualenvs/pound/local/lib/python2.7/site packages/pyramid-1.5-py2.7.egg/pyramid/scripts/pserve.py”,第316行,运行中
全局_conf=vars)
loadapp中的文件“/home/hughdbrown/.virtualenvs/pound/local/lib/python2.7/site packages/pyramid-1.5-py2.7.egg/pyramid/scripts/pserve.py”,第340行
返回loadapp(应用规格,名称=名称,相对到=相对到,**千瓦)
loadapp中的文件“/home/hughdbrown/.virtualenvs/pound/lib/python2.7/site packages/PasteDeploy-1.5.2-py2.7.egg/paste/deploy/loadwsgi.py”,第247行
返回loadobj(应用程序,uri,name=name,**kw)
loadobj中的文件“/home/hughdbrown/.virtualenvs/pound/lib/python2.7/site packages/PasteDeploy-1.5.2-py2.7.egg/paste/deploy/loadwsgi.py”,第271行
全局配置=全局配置)
loadcontext中的文件“/home/hughdbrown/.virtualenvs/pound/lib/python2.7/site packages/PasteDeploy-1.5.2-py2.7.egg/paste/deploy/loadwsgi.py”,第296行
全局配置=全局配置)
文件“/home/hughdbrown/.virtualenvs/pound/lib/python2.7/site packages/PasteDeploy-1.5.2-py2.7.egg/paste/deploy/loadwsgi.py”,第320行,在_loadconfig中
return loader.get_context(对象类型、名称、全局配置)
get_上下文中的文件“/home/hughdbrown/.virtualenvs/pound/lib/python2.7/site packages/PasteDeploy-1.5.2-py2.7.egg/paste/deploy/loadwsgi.py”,第454行
(节)
文件“/home/hughdbrown/.virtualenvs/pound/lib/python2.7/site packages/PasteDeploy-1.5.2-py2.7.egg/paste/deploy/loadwsgi.py”,第476行,在上下文中
对象类型,名称=使用,全局配置=全局配置)
get_上下文中的文件“/home/hughdbrown/.virtualenvs/pound/lib/python2.7/site packages/PasteDeploy-1.5.2-py2.7.egg/paste/deploy/loadwsgi.py”,第406行
全局配置=全局配置)
loadcontext中的文件“/home/hughdbrown/.virtualenvs/pound/lib/python2.7/site packages/PasteDeploy-1.5.2-py2.7.egg/paste/deploy/loadwsgi.py”,第296行
全局配置=全局配置)
文件“/home/hughdbrown/.virtualenvs/pound/lib/python2.7/site packages/PasteDeploy-1.5.2-py2.7.egg/paste/deploy/loadwsgi.py”,第337行,在_loadfunc中
return loader.get_context(对象类型、名称、全局配置)
get_上下文中的文件“/home/hughdbrown/.virtualenvs/pound/lib/python2.7/site packages/PasteDeploy-1.5.2-py2.7.egg/paste/deploy/loadwsgi.py”,第681行
obj=查找对象(self.spec)
文件“/home/hughdbrown/.virtualenvs/pound/lib/python2.7/site packages/PasteDeploy-1.5.2-py2.7.egg/paste/deploy/util.py”,第68行,在查找对象中
模块=\uuuu导入\uuuuu(零件)
文件“/home/hughdbrown/.virtualenvs/pound/local/lib/python2.7/site-packages/pound-0.0.40-py2.7.egg/pound/server/________.py”,第10行
从pound.server.views导入端点,路由
ImportError:没有名为views的模块
这在python REPL中运行良好:

%python
Python 2.7.5+(默认,2014年2月27日,19:37:08)
[GCC 4.8.1]关于linux2
有关详细信息,请键入“帮助”、“版权”、“信用证”或“许可证”。
>>>从pound.server.views导入端点,路由
>>> 
并从命令行导入:

%python-c“来自pound.server.views导入端点,路由”
简略的
输出显示了我正在使用的内容:

%树
├── __初始值
├── 思考
│   ├── __初始值
│   ├── 服务器
│   │   ├── __初始值
│   │   └── 意见
│   │       ├── 环境_templates.py
│   │       ├── 组.py
│   │       ├── __初始值
│   │       ├── 实例.py
│   │       ├── tasks.py
│   │       └── users.py
My
PYTHONPATH
设置为此树的根目录:

%echo$PYTHONPATH
/home/hughdbrown/workspace/ept/pound/lib
我在一个使用Python2.7的virtualenv中运行它。我今天断断续续地工作,但我不知道问题出在哪里。首先,
\uuuuu init\uuuuuu.py
似乎可以处理之前的一些导入:

from .database import get_db
from .config import parser
from .views import Endpoints, route
(我将最后一行更改为绝对导入。运气不好。)

我尝试过的事情:

  • 重建虚拟

  • 设置
    PYTHONPATH

  • 在代码中使用绝对路径

  • 我愿意接受关于如何调试此错误的进一步建议



    所以我犯的错误是只看源代码树。问题实际上是在运行时环境中,在我的virtualenv中。当我查看那里时,我发现所需的文件没有安装。从根本上说,问题在于
    setup.py

    我通常的技巧是在发生导入问题的实际上下文中简单地打印
    sys.path
    。在您的情况下,打印位置似乎位于
    /home/hughdbrown/.local/bin/pserve
    。然后在路径显示的位置检查目录和文件

    首先,您需要:

    import sys
    
    在带有打印表达式的python 2中:

    print sys.path
    
    或者在python 3中使用打印功能:

    print(sys.path)
    

    我将
    PYTHONPATH
    设置为
    这为我解决了问题

    export PYTHONPATH='.'
    
    对于单衬里,您可以轻松地执行以下操作:

    PYTHONPATH='.' your_python_script
    

    这些命令应该在终端中运行

    我也遇到了这个问题,我刚刚忘记在执行程序之前在终端中键入workon myproject。

    它们是运行python脚本的几种方法:

    • 双击file.py运行(它打开python命令行)
    • 从cmd运行file.py
      python --version 
      
      import sys print (sys.version)
      input("exit")
      
      assoc .py
      ftype Python.File
      
      python
      import sys
      sys.executable
      sys.path
      import win32clipboard
      win32clipboard.__file__
      
      import sys
      print(sys.executable)
      print(sys.path)
      import win32clipboard
      print(win32clipboard.__file__)
      
      test
      ├── __init__.py
      ├── a
      │   ├── __init__.py
      │   └── test.py
      └── b
          └── __init__.py
      
      import sys
      import os
      
      sys.path.append(os.path.dirname(os.path.dirname(os.path.dirname(__file__))))
      
      module.py
      
      module
      |
      |--module
      |  |
      |  |--__init__.py
      |  |--module.py
      
      __init.py__ 
      
      __init__.py