使用運行 python2 核心的 Jupyter Notebook,我嘗試導入emcee
並收到錯誤訊息:
File "/home/me/.local/lib/python2.7/site-packages/emcee/ensemble.py", line 84
parameter_names: Optional[Union[Dict[str, int], List[str]]] = None,
^
SyntaxError: invalid syntax
顯然是因為我使用的是 python2 核心。
然後我使用以下命令安裝了 ipykernal:python3 -m pip install ipykernel
然後我使用 Python3 核心開啟了 Jupyter Notebook。我再次嘗試,import emcee
但遇到了同樣的問題。它仍在emcee
python2 路徑中尋找模組。
然後我pip3 install emcee
打開了 Jupyter Notebook(python3 核心),但我仍然遇到同樣的問題。
我想我需要告訴 Jupyter Notebook 尋找 emcee 的 python3 版本,但我不知道該怎麼做。我剛剛嘗試過:
export PYTHONPATH='/home/me/.local/lib/python3.6/site-packages/'
但同樣,這並沒有解決問題。我檢查了sys.path
我的 Jupyter Notebook 中的 ,新的 python 路徑似乎沒有添加。
有人可以告訴我我做錯了什麼嗎?
答案1
Jupyter Notebook 並沒有真正使用 python3 內核,儘管它說:
我的 python3 核心位於:/home/damejia/.local/share/jupyter/kernels/python3
該kernel.json
文件是:
{
"argv": [
"python",
"-m",
"ipykernel_launcher",
"-f",
"{connection_file}"
],
"display_name": "Python 3",
"language": "python"
}
但「python」只是指向我的python2。我將“python”更改為“python3”,一切正常。