Дрейк обновился до Python 3,8 на ма c, но это определенно не безболезненно.
Скорее всего, если вы запустите install_prereqs.sh
Дрейка, то немедленно запустите нашу стандартную проверку
python3 -c 'import pydrake; print(pydrake.__file__)'
вы найдете, что это не работает! Вы увидите ошибку вроде:
ImportError: Python version mismatch: module was compiled for Python 3.8, but the interpreter version is incompatible: 3.7.7 (default, Mar 10 2020, 15:43:33)
Это потому, что недавно установленная python3 .8 не находится на вашем пути по умолчанию. Документация Drake упоминает об этом, но это легко пропустить: https://github.com/RobotLocomotion/drake/pull/13031/files#diff -e023fae1c07b0af84d2687aae9fbb2b0R21
Запуск brew info python@3.8
также сказал нам рекомендуемое исправление (но также было легко пропустить)
If you need to have python@3.8 first in your PATH run:
echo 'export PATH="/usr/local/opt/python@3.8/bin:$PATH"' >> ~/.zshrc
Даже все еще jupyter notebook
все еще терпели неудачу, потому что они находили python3.7
. Мне пришлось запустить jupyter kernelspec list
, чтобы найти файл /usr/local/share/jupyter/kernels/python3/kernel.json
и отредактировать python
в python3
.
"argv": [
"python3", # <== this was "python"
"-m",
"ipykernel_launcher",
"-f",
"{connection_file}"
],
"display_name": "Python 3",
"language": "python"
}
Тем не менее, мой nbconvert
конвейер для тестирования все еще не работает. Работаем над этим следующим ...