繁体   English   中英

Python / PyCharm:sys.path“ lib”与venv的“ Lib”大小写不同吗?

[英]Python/PyCharm: sys.path “lib” not the same capitalization as venv's “Lib”?

  1. 我克隆了一个Python 2项目,并使用PyCharm创建了Python 2.7.12 virtualenv。
  2. 尝试运行代码时,我现在收到“ ImportError”。
  3. 在调试时,我注意到,如果我启动virtualenv并运行它包含的Python版本,然后检查已检查模块的路径,则“ lib”不会大写(请参见下面的第二个红色箭头)。
  4. 然而,在我VENV文件夹,“库” 大写。

这个可以吗?

在此处输入图片说明


下面是我得到的回溯的屏幕截图。 始终找不到导入的第一个模块。 如果我使用venv启动交互式会话,则可以导入所有模块。 更奇怪的是,如果我创建一个文件并尝试仅在其中导入的情况下运行它(例如,“ test.py”),则回溯会在原始文件(site.py)中显示一个错误。

在此处输入图片说明


我将site.py拉到一个新项目中,似乎是导致错误的site的实际文件名:

不起作用:

在此处输入图片说明

可以工作:

在此处输入图片说明

我的问题的答案是“是的,可以”。

ImportError的原因是存在一个名为site的顶级文件。 正如您可以从Stack Overflow答案中了解到的那样,因为有一个内置的site模块,所以拥有一个名为site.py的文件site.py Python的打包查找工具感到困惑。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM