Внезапно все виртуальные среды выходят из строя

#python #visual-studio-code #virtualenv #jupyter

Вопрос:

Я использую vscode и работаю с Jupyter в этом конкретном примере. Вчера я прекрасно выполнял свою работу. Сегодня мой venv сломан, поэтому я удалил и начал снова:

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

Хорошо, теперь у меня есть совершенно новый венв. Так что давайте попробуем обновить pip:

 python -m pip --upgrade pip  

И я получаю эту ошибку:

 Traceback (most recent call last):  File "C:UsersjmarshallAppDataLocalProgramsPythonPython38-32librunpy.py", line 194, in _run_module_as_main  return _run_code(code, main_globals, None,  File "C:UsersjmarshallAppDataLocalProgramsPythonPython38-32librunpy.py", line 87, in _run_code  exec(code, run_globals)  File "C:Usersjmarshallsourcemdgattributionvenvlibsite-packagespip__main__.py", line 16, in lt;modulegt;  from pip._internal import main as _main # isort:skip # noqa  File "C:Usersjmarshallsourcemdgattributionvenvlibsite-packagespip_internal__init__.py", line 19, in lt;modulegt;  from pip._vendor.urllib3.exceptions import DependencyWarning  File "C:Usersjmarshallsourcemdgattributionvenvlibsite-packagespip_vendorurllib3__init__.py", line 7, in lt;modulegt;  from .connectionpool import (  File "C:Usersjmarshallsourcemdgattributionvenvlibsite-packagespip_vendorurllib3connectionpool.py", line 11, in lt;modulegt;  from .exceptions import (  File "C:Usersjmarshallsourcemdgattributionvenvlibsite-packagespip_vendorurllib3exceptions.py", line 2, in lt;modulegt;  from .packages.six.moves.http_client import (  File "C:Usersjmarshallsourcemdgattributionvenvlibsite-packagespip_vendorurllib3packagessix.py", line 203, in load_module  mod = mod._resolve()  File "C:Usersjmarshallsourcemdgattributionvenvlibsite-packagespip_vendorurllib3packagessix.py", line 115, in _resolve  return _import_module(self.mod)  File "C:Usersjmarshallsourcemdgattributionvenvlibsite-packagespip_vendorurllib3packagessix.py", line 82, in _import_module  __import__(name)  File "C:UsersjmarshallAppDataLocalProgramsPythonPython38-32libhttpclient.py", line 71, in lt;modulegt;  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:UsersjmarshallAppDataLocalProgramsPythonPython38-32librunpy.py", line 194, in _run_module_as_main  return _run_code(code, main_globals, None,  File "C:UsersjmarshallAppDataLocalProgramsPythonPython38-32librunpy.py", line 87, in _run_code  exec(code, run_globals)  File "c:Usersjmarshallsourcemdgattributionvenvlibsite-packagesipykernel_launcher.py", line 15, in lt;modulegt;  from ipykernel import kernelapp as app  File "c:Usersjmarshallsourcemdgattributionvenvlibsite-packagesipykernelkernelapp.py", line 22, in lt;modulegt;  from IPython.core.application import (  File "c:Usersjmarshallsourcemdgattributionvenvlibsite-packagesIPython__init__.py", line 56, in lt;modulegt;  from .terminal.embed import embed  File "c:Usersjmarshallsourcemdgattributionvenvlibsite-packagesIPythonterminalembed.py", line 17, in lt;modulegt;  from IPython.terminal.ipapp import load_default_config  File "c:Usersjmarshallsourcemdgattributionvenvlibsite-packagesIPythonterminalipapp.py", line 28, in lt;modulegt;  from IPython.core.magics import (  File "c:Usersjmarshallsourcemdgattributionvenvlibsite-packagesIPythoncoremagics__init__.py", line 18, in lt;modulegt;  from .code import CodeMagics, MacroToEdit  File "c:Usersjmarshallsourcemdgattributionvenvlibsite-packagesIPythoncoremagicscode.py", line 23, in lt;modulegt;  from urllib.request import Request, urlopen  File "C:UsersjmarshallAppDataLocalProgramsPythonPython38-32liburllibrequest.py", line 88, in lt;modulegt;  import http.client  File "C:UsersjmarshallAppDataLocalProgramsPythonPython38-32libhttpclient.py", line 71, in lt;modulegt;  import email.parser ModuleNotFoundError: No module named 'email.parser'  

Что, черт возьми, здесь происходит?

Правка1

Я только что доказал, что это приведет к ошибке в экземпляре глобального интерпретатора 3.8, хотя над этим работают другие ноутбуки. Я добавил скриншот проекта.

введите описание изображения здесь

Комментарии:

1. можете ли вы показать мне файловую структуру вашего проекта?

2. @алгоритмы — Я добавил ss, который показывает вам структуру, но я только что понял, что это происходит и в экземпляре глобального интерпретатора.

Ответ №1:

Вы создали пакет с именем email , вам нужно переименовать его в другие имена.