【问题标题】:Python import fails in windows, but not linuxPython导入在Windows中失败,但不是Linux
【发布时间】:2014-12-10 14:50:17
【问题描述】:

当我导入一个模块时,它在 linux 上工作,但在 windows 中失败,并出现错误:

<Directory>\src>main.py
Traceback (most recent call last):
  File "<Directory>\src\main.py", line 12, in <module>
    from parser.parser import Parser
ImportError: No module named parser

在 Windows 上似乎找不到文件 parser.py(由我创建)。我不明白为什么,因为它找到了所有其他模块。

[folder:
   - main.py
   - parser/__init__.py
   - parser/parser.py]

【问题讨论】:

  • 目录结构是不是和python版本一模一样?
  • 是的,是同一个程序,同一个版本的python
  • __ init__.py中的空格是o型吗?
  • 没有空间...我必须这样做才能写到这里
  • @Frenkyk 认为你没有,我只是删除了它(空格)

标签: python linux windows python-2.7 import


【解决方案1】:

问题出在包名 parser 上。通过导入from parser,您可以从没有parser.parser 子模块的标准库中导入parser 模块。见parser

【讨论】:

  • 您是否将目录解析器重命名为其他名称?因为它是一个矛盾的。
【解决方案2】:

我遇到了同样的问题,已经解决了。

方法如下。

检查您的 sys.path(首先导入它)以查看您的编码文件的目录是否包含在其中。如果没有,请附加它。

这是我的代码:

import sys
import os
sys.path[0]=os.path.dirname(os.path.realpath(__file__))

如果它不起作用,请告诉我。

顺便说一句,我是中国人,所以请忽略任何语法错误。我想你明白我的意思。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-19
    相关资源
    最近更新 更多