Почему Pycharm автоматически переименовывает некоторые методы в записных книжках Jupyter при рефакторинге, но не другие?

#python #jupyter-notebook #pycharm #refactoring #automated-refactoring

Вопрос:

Когда я пытаюсь переименовать функцию plot_summary_metrics и щелкнуть Предварительный просмотр, я вижу следующее:

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

Pycharm предлагает мне переработать метод plot_summary_metrics внутри .ipynb_checkpoints , но не в самой записной книжке, которая находится в той же папке, esn т. е.

С другой стороны, он отображается как цель для рефакторинга записной книжки в папке journals .

Об этом есть несколько вопросов в JetBrains. См. https://youtrack.jetbrains.com/issue/PY-30784 и связанные с этим вопросы.

Несмотря на существование ошибки, знает ли кто-нибудь, по крайней мере, способ сделать Pycharm последовательным и найти цели рефакторинга во всех ноутбуках, а не только в некоторых?

Единственная разница (помимо того, что она находится в разных папках), о которой я могу думать, заключается в том, что atractor_sequence_generation_and_predition_error.ipynb она еще не завершена, пока 2021-07-07-two-moving-bump-attractors-in-one-net.ipynb есть.

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

1. Если вы пришли к этому вопросу, желая найти обходной путь, проверьте ответ Криса Роуза на youtrack: «В качестве обходного пути мы используем Jupytext ( github.com/mwouts/jupytext ). Записная книжка сопряжена с файлом python, который индексируется PyCharm. Jupytext автоматически обрабатывает передачу всех изменений из записной книжки в файл python и наоборот. Таким образом, рефакторинг файла python с помощью PyCharm отражается в записной книжке, и все изменения в записной книжке также отражаются в файле python. Это означает, что мы можем продолжать работать в Jupyterlab с ноутбуком, но также можем использовать PyCharm для рефакторинга»