首页 > 解决方案 > 突然所有虚拟环境都失败了

问题描述

我使用 vscode,在这个特定的示例中我正在使用 Jupyter。昨天,我的工作做得很好。今天,我的venv坏了,所以我删除并重新开始:

python -m venv venv
./venv/Scripts/Activate

好的,所以我现在有了全新的 venv。因此,让我们尝试更新 pip:

python -m pip --upgrade pip

我得到这个错误:

Traceback (most recent call last):
  File "C:\Users\jmarshall\AppData\Local\Programs\Python\Python38-32\lib\runpy.py", line 194, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "C:\Users\jmarshall\AppData\Local\Programs\Python\Python38-32\lib\runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "C:\Users\jmarshall\source\mdgattribution\venv\lib\site-packages\pip\__main__.py", line 16, in <module>
    from pip._internal import main as _main  # isort:skip # noqa
  File "C:\Users\jmarshall\source\mdgattribution\venv\lib\site-packages\pip\_internal\__init__.py", line 19, in <module>
    from pip._vendor.urllib3.exceptions import DependencyWarning
  File "C:\Users\jmarshall\source\mdgattribution\venv\lib\site-packages\pip\_vendor\urllib3\__init__.py", line 7, in <module>
    from .connectionpool import (
  File "C:\Users\jmarshall\source\mdgattribution\venv\lib\site-packages\pip\_vendor\urllib3\connectionpool.py", line 11, in <module>
    from .exceptions import (
  File "C:\Users\jmarshall\source\mdgattribution\venv\lib\site-packages\pip\_vendor\urllib3\exceptions.py", line 2, in <module>
    from .packages.six.moves.http_client import (
  File "C:\Users\jmarshall\source\mdgattribution\venv\lib\site-packages\pip\_vendor\urllib3\packages\six.py", line 203, in load_module
    mod = mod._resolve()
  File "C:\Users\jmarshall\source\mdgattribution\venv\lib\site-packages\pip\_vendor\urllib3\packages\six.py", line 115, in _resolve
    return _import_module(self.mod)
  File "C:\Users\jmarshall\source\mdgattribution\venv\lib\site-packages\pip\_vendor\urllib3\packages\six.py", line 82, in _import_module
    __import__(name)
  File "C:\Users\jmarshall\AppData\Local\Programs\Python\Python38-32\lib\http\client.py", line 71, in <module>
    import email.parser
ModuleNotFoundError: No module named 'email.parser'

好的,让我们尝试忽略这个设置的 jupyter。

pip install wheel
pip install juypterlab
pip install ipykernel

然后,当我尝试在 VSCode 中运行该笔记本中的单元时,我收到此错误:

Kernel died (code: 1). ModuleNotFoundError: No module named 'email.parser', 
Traceback (most recent call last):
  File "C:\Users\jmarshall\AppData\Local\Programs\Python\Python38-32\lib\runpy.py", line 194, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "C:\Users\jmarshall\AppData\Local\Programs\Python\Python38-32\lib\runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "c:\Users\jmarshall\source\mdgattribution\venv\lib\site-packages\ipykernel_launcher.py", line 15, in <module>
    from ipykernel import kernelapp as app
  File "c:\Users\jmarshall\source\mdgattribution\venv\lib\site-packages\ipykernel\kernelapp.py", line 22, in <module>
    from IPython.core.application import (
  File "c:\Users\jmarshall\source\mdgattribution\venv\lib\site-packages\IPython\__init__.py", line 56, in <module>
    from .terminal.embed import embed
  File "c:\Users\jmarshall\source\mdgattribution\venv\lib\site-packages\IPython\terminal\embed.py", line 17, in <module>
    from IPython.terminal.ipapp import load_default_config
  File "c:\Users\jmarshall\source\mdgattribution\venv\lib\site-packages\IPython\terminal\ipapp.py", line 28, in <module>
    from IPython.core.magics import (
  File "c:\Users\jmarshall\source\mdgattribution\venv\lib\site-packages\IPython\core\magics\__init__.py", line 18, in <module>
    from .code import CodeMagics, MacroToEdit
  File "c:\Users\jmarshall\source\mdgattribution\venv\lib\site-packages\IPython\core\magics\code.py", line 23, in <module>
    from urllib.request import Request, urlopen
  File "C:\Users\jmarshall\AppData\Local\Programs\Python\Python38-32\lib\urllib\request.py", line 88, in <module>
    import http.client
  File "C:\Users\jmarshall\AppData\Local\Programs\Python\Python38-32\lib\http\client.py", line 71, in <module>
    import email.parser
ModuleNotFoundError: No module named 'email.parser'

这到底是怎么回事?

编辑1

我刚刚证明它会在 3.8 全局解释器实例上出错,即使我有其他笔记本正在处理它。我添加了该项目的屏幕截图。

在此处输入图像描述

标签: pythonvisual-studio-codevirtualenvjupyter

解决方案


您创建了一个名为 的包email,您需要将其重命名为其他名称。


推荐阅读