Используя Jupyter Notebook, работающий с ядром python2, я попытался выполнить импорт 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
Затем я открыл Jupyter Notebook, используя ядро Python3. Я снова попытался, 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" и все заработало.