Может ли расширение Code Runner в VS Code использовать выбранное ядро ​​при запуске фрагмента кода?

Я новичок в программировании и настраиваю Visual Studio Code, чтобы начать изучать Python. У меня есть следующая установка:

  • MacOS 10.6.4 (у меня система Python 2.7.16)
  • установлен Anaconda («базовая» среда с Python 3.9.7 и среда «Python310InclCoreDS» с Python 3.10.4)
  • установлен код Visual Studio 1.66.2
    • доб: Python 2022.4.1
    • доб: Пиланс 2022.4.3
    • ext: Jupyter Notebook Renderers v1.0.6
    • расширение: Jupyter Keymap v1.0.0
    • доб: Юпитер 2022.3.1000901801
    • расширение: Code Runner 0.11.7
    • ext: Черный форматтер v2022.1.11231003

Теперь у меня возникли проблемы с пониманием того, как расширение Code Runner выбирает версию Python. Смотрите скриншот ниже.

Может ли расширение Code Runner в VS Code использовать выбранное ядро ​​при запуске фрагмента кода?

  • Всякий раз, когда я запускаю обычный файл Python полный (.py), средство выбора ядра Python работает должным образом, и используется выбранная версия Python. (Этого сценария нет на скриншоте.)
  • Всякий раз, когда я запускаю кодовая ячейка в блокноте Jupyter с помощью кнопки «Выполнить ячейку», средство выбора ядра Jupyter работает должным образом, и используется выбранная версия Python. (Этот сценарий показан на моем скриншоте красным.)
  • Всякий раз, когда я выбираю кусок кода с помощью Code Runner либо в обычном файле Python (.py), либо в блокноте Jupyter, средства выбора ядра не работают должным образом. Я заметил, что он будет использовать мою систему Python 2.7.16, если terminal.integrated.inheritEnv=True. (Этот сценарий показан на моем снимке экрана синим цветом.) Он будет использовать мою среду Python 3.9.7 Anaconda, когда terminal.integrated.inheritEnv=False. (Этого сценария нет на скриншоте.)

Теперь интересно: может ли Code Runner при запуске кусок кода также использовать выбранное ядро ​​(либо при выполнении части файла .py, либо при выполнении части блокнота Jupyter)?

Сводка решения
Краткое изложение решения, потому что часть его находится в комментарии ниже. Вам необходимо настроить Executor Map для Code Runner, как описано ниже. Кроме того, Code Runner всегда использует ядро, выбранное в расширении Python, а не в расширении Jupyter.

Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
1
0
34
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Это должно быть связано с интерпретатором Python по умолчанию, используемым исполнителем кода, который вы можете изменить в settings.json.

Вы можете обратиться к этому страница на github для получения дополнительной информации.

Большое спасибо за помощь! Это указало мне направление, которое я уже исследовал: редактирование карты исполнителя Code-runner и изменение значения Python на "python": "$pythonPath -u $fullFileName". Кроме того, я выяснил, что Code-runner не использует средство выбора ядра из расширения Jupyter. Вместо этого он всегда использует средство выбора ядра из расширения Python. Это привело меня в замешательство относительно того, что именно происходит.

luukburger 05.05.2022 11:03

@luukburger К сожалению, я даже не могу использовать code-runner в файле jupyter. Он подскажет мне, что «NameError: имя« ноль »не определено», поэтому я не могу воспроизвести вашу проблему. В GitHub также очень мало связанного контента. Ведь это не официальное расширение Microsoft

MingJie-MSFT 05.05.2022 11:14

Я думаю, это потому, что вы нажимаете кнопку воспроизведения в правом верхнем углу для всего файла .ipynb? Это не работает, потому что Code-runner запускает не ipython, а python. Что действительно работает для меня, так это выбор фрагмента кода в ячейке кода и щелчок правой кнопкой мыши «Выполнить код», но, как сказано: он будет использовать не выбранное ядро ​​из расширения Jupyter, а ядро ​​из расширения Python.

luukburger 05.05.2022 11:19

Другие вопросы по теме