【发布时间】:2018-02-22 09:52:25
【问题描述】:
- 我克隆了一个 Python 2 项目并使用 PyCharm 创建了一个 Python 2.7.12 virtualenv。
- 我现在在尝试运行代码时收到“ImportError”。
- 调试时我注意到如果我启动 virtualenv 并运行它包含的 Python 版本,然后检查检查模块的路径,“lib”没有大写(见下面的第二个红色箭头)。李>
- 但是,在我的 venv 文件夹中,“Lib”是大写的。
这样好吗?
下面是我得到的回溯的截图。始终找不到导入的第一个模块。如果我使用 venv 启动交互式会话,我可以导入所有模块。更奇怪的是,如果我创建一个 new 文件并尝试在其中仅导入一个文件(例如“test.py”)运行它,那么回溯会在 original 文件 (site.py)。
我将site.py 拉到一个新项目中,似乎是文件的实际名称site 导致了错误:
不起作用:
有效:
【问题讨论】:
-
您能否向我们展示您对导入错误的追溯?我认为大写的“L”在这里不是问题,因为您可以看到您的 python/venv 发现并像正常一样使用 lib 文件夹。它可能只是 PyCharm 显示错误。
-
@Sativa 感谢您的帮助。我已经包含了回溯的图像以及有关我所看到的行为的一些其他信息。
-
啊,python中有一个site.py。它用于将第三方包的搜索路径附加到 sys.path。也许是矛盾的
-
是的,就是这样,感谢您的帮助!
标签: python python-2.7 pycharm