簡體   English   中英

使用 Python 3.10 運行單元需要安裝 ipykernel

[英]Running cells with Python 3.10 requires ipykernel installed

我剛剛在我的筆記本電腦(Ubuntu 20.04)上安裝了 Python 3.10。

在 VS Code 中運行 Jupyter Notebook 適用於 Python 3.9,但不適用於 Python 3.10。 我收到錯誤消息: Running cells with 'Python 3.10.0 64 bit' requires ipykernel installed or requires an update


2022 年 2 月更新

Jalil Nourmohammadi Khiarak 給出了更完整的答案,現在是新接受的答案


2022 年 1 月更新

這是一個愚蠢的錯誤,我解決了我的問題(請參閱接受的答案)。


我嘗試過的事情:

  • 點擊重新安裝,運行:
/usr/bin/python3.10 /home/joris/.vscode/extensions/ms-python.python-2021.10.1365161279/pythonFiles/shell_exec.py /usr/bin/python3.10 -m pip install -U --force-reinstall ipykernel /tmp/tmp-12568krFMIDJVy4jp.log
  • 運行pip3 install --upgrade ipykernel jupyter notebook pyzmq (來自這個線程)。

編輯

  • 正如評論中所問的,這是我單擊“重新安裝”按鈕時的輸出:
/usr/bin/python3.10 /home/joris/.vscode/extensions/ms-python.python-2021.10.1365161279/pythonFiles/shell_exec.py /usr/bin/python3.10 -m pip install -U --force-reinstall ipykernel /tmp/tmp-10997AnLZP3B079oV.log
Executing command in shell >> /usr/bin/python3.10 -m pip install -U --force-reinstall ipykernel
Traceback (most recent call last):
  File "/usr/lib/python3.10/runpy.py", line 196, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/usr/lib/python3.10/runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "/usr/lib/python3/dist-packages/pip/__main__.py", line 19, in <module>
    sys.exit(_main())
  File "/usr/lib/python3/dist-packages/pip/_internal/cli/main.py", line 73, in main
    command = create_command(cmd_name, isolated=("--isolated" in cmd_args))
  File "/usr/lib/python3/dist-packages/pip/_internal/commands/__init__.py", line 96, in create_command
    module = importlib.import_module(module_path)
  File "/usr/lib/python3.10/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 883, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/usr/lib/python3/dist-packages/pip/_internal/commands/install.py", line 24, in <module>
    from pip._internal.cli.req_command import RequirementCommand
  File "/usr/lib/python3/dist-packages/pip/_internal/cli/req_command.py", line 15, in <module>
    from pip._internal.index.package_finder import PackageFinder
  File "/usr/lib/python3/dist-packages/pip/_internal/index/package_finder.py", line 21, in <module>
    from pip._internal.index.collector import parse_links
  File "/usr/lib/python3/dist-packages/pip/_internal/index/collector.py", line 12, in <module>
    from pip._vendor import html5lib, requests
ImportError: cannot import name 'html5lib' from 'pip._vendor' (/usr/lib/python3/dist-packages/pip/_vendor/__init__.py)
Traceback (most recent call last):
  File "/home/joris/.vscode/extensions/ms-python.python-2021.10.1365161279/pythonFiles/shell_exec.py", line 26, in <module>
    subprocess.check_call(shell_args, stdout=sys.stdout, stderr=sys.stderr)
  File "/usr/lib/python3.10/subprocess.py", line 369, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['/usr/bin/python3.10', '-m', 'pip', 'install', '-U', '--force-reinstall', 'ipykernel']' returned non-zero exit status 1.
  • 這是我的_vendor文件夾包含的內容:
joris@joris-N751JK:~$ ls /usr/lib/python3/dist-packages/pip/_vendor/
__init__.py  __pycache__
  • 這是重新安裝 pip 並檢查_vendor文件的輸出:
joris@joris-N751JK:~$ python3 -m pip install --upgrade --force-reinstall pip
Defaulting to user installation because normal site-packages is not writeable
Collecting pip
  Using cached pip-21.3.1-py3-none-any.whl (1.7 MB)
Installing collected packages: pip
  Attempting uninstall: pip
    Found existing installation: pip 21.3.1
    Uninstalling pip-21.3.1:
      Successfully uninstalled pip-21.3.1
Successfully installed pip-21.3.1
joris@joris-N751JK:~$ ls /usr/lib/python3/dist-packages/pip/_vendor
__init__.py  __pycache__

我想為此添加一條評論:

您的解決方案是正確的,但是當我在我的新 Linux 上使用它時它對我不起作用。 我做了以下工作來解決這個問題。

可能是使用以下評論后的人:

python3.10 -m pip install ipykernel

'distutils.util' 會出錯。 所以你應該先安裝:

sudo apt-get install python3.10-distutils

然后再次如果您嘗試安裝,您將收到另一個錯誤:

ImportError:無法從“pip._vendor”導入名稱“html5lib”(/usr/lib/python3/dist-packages/pip/_vendor/

要解決它,您應該使用:

  curl -sS https://bootstrap.pypa.io/get-pip.py | python3.10

最后,最好運行:

 /bin/python3.10 ~/.vscode/extensions/ms-python.python-2022.0.1786462952/pythonFiles/shell_exec.py /bin/python3.10 -m pip install -U notebook /tmp/tmp-5290PWIe78U4HgLu.log

我不認為 ipykernel 與 3.10 兼容。

以下是我嘗試使用以下命令安裝 ipykernel 時收到的消息: conda install -c anaconda ipykernel

UnsatisfiableError: The following specifications were found
to be incompatible with the existing python installation in your environment:

Specifications:

  - ipykernel -> python[version='>=2.7,<2.8.0a0|>=3.6,<3.7.0a0|>=3.7,<3.8.0a0|>=3.8,<3.9.0a0|>=3.5,<3.6.0a0|>=3.9,<3.10.0a0']

Your python: python=3.10

解決方案:

我建議使用conda或其他創建虛擬環境

為了讓你開始:

  1. 安裝蟒蛇
  2. 輸入以下命令。 [注意:這些是 Windows 命令 - 在 Mac 和 Linux 上可能略有不同。]
# Create virtual environment
# Use a version of Python that is less than 3.10
conda create --name your_env_name python<3.10

# Activate new environment
conda activate your_env_name

# Install ipykernel
conda install -c anaconda ipykernel

# Add this new environment to your Jupyter Notebook kernel list
ipython kernel install --name your_env_name --user

# Windows only: When trying to launch `jupyter notebook`, you may receive a win32api error.
# The command below fixes that issue.
conda install -c anaconda pywin32

我終於發現出了什么問題。 我在 Python 編碼方面相當有經驗,但在一般的版本處理方面仍遠非專業人士。
這里的問題是需要為您安裝的每個新 Python 版本重新安裝ipykernel 因此,解決我的問題的方法很簡單:

python3.10 -m pip install ipykernel

MacOS M1

python -m pip install jupyter notebook -U

使用它並重新啟動 VSCode 即可

如果您看到此錯誤,也可以使用

Failed to start the Kernel. 

The 'python3912jvsc74a57bd0f40663dfee16db09be6af2ff2550db36bd5354ec153147c40353828514dedb99' kernel is not available. Please pick another suitable kernel instead, or install that kernel. 

View Jupyter log for further details.

幾天前它工作正常,但好的,這解決了它!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM