!pip install или pip install внутри блокнота Jupyter

Можно установить пакет Python внутри ячейки кода в блокноте Jupyter (я использую лабораторию Jupyter). Раньше это была команда !pip install (поскольку это была системная команда), но с некоторых пор кажется, что просто pip install тоже работает. Мне не удалось разобраться, всегда ли pip install работает в ячейке кода или иногда !pip install требуется. Кто-нибудь знает?

Волшебная версия была добавлена ​​в 2019 году и должна использоваться в наши дни. Он был добавлен, чтобы гарантировать, что установка происходит в среде, где работает ядро, чего команда в сочетании с восклицательным знаком никогда не делала и могла вызвать проблемы. Подробнее о современной команде %pip installсмотрите здесь. Лучше всего быть явным и использовать символ %, чтобы ваши ученики переняли текущие лучшие практики, которые теперь универсально работают в Jupyter, начиная с JupyterLite и даже...

Wayne 13.06.2024 14:30

<продолжение> Google Colab теперь поддерживает это. Для дальнейшего контекста Второй абзац более подробно описывает, почему восклицательный знак может привести к проблемам.

Wayne 13.06.2024 14:31
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
2
140
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

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

Pip — это волшебная команда в блокноте Jupyter, поэтому ее можно вызвать с помощью

%pip

который должен заменить вызовы !pip во всех местах.

То, что вы наблюдаете, вероятно, является функцией automagic, которая позволяет вам просто написать pip в ячейке без % (или !), и она автоматически вызовет pip для вашего текущего интерпретатора Python (это, конечно, при условии, что нет переменная с именем pip в данный момент установлена, так как она имеет приоритет перед магической командой)

Обратите внимание, что в ядрах IPython по умолчанию включена автоматическая магия, см. документацию:

InteractiveShell.automagic

Включить магические команды, которые будут вызываться без ведущего %.
Тип черты: Bool
По умолчанию: True
Опция CLI: --automagic

Ах. Это немного проясняет ситуацию. Прав ли я, полагая, что функция automagic включена во многих стандартных установках (например, anaconda)? Кажется, у всех учеников в моем классе автоматическая магия включена по умолчанию, но она не включается.

Mark Bakker 13.06.2024 11:24

Да, это должно быть включено по умолчанию, я добавил это в свой ответ.

FlyingTeller 13.06.2024 11:54

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

Похожие вопросы

Невозможно открыть указанный URL-адрес для доступа к ноутбуку Jupiter, работающему на виртуальной машине GCP
Ошибка pyspark.sql при чтении CSV-файла: ПРЕДУПРЕЖДЕНИЕ FileStreamSink: предполагается, что каталог метаданных отсутствует. Ошибка при поиске каталога метаданных по пути
Pycharm продолжает обновлять интерпретатор только на Jupyter Notebook
Как добавить цветную строку с дополнительной информацией
Сценарий анимации Matplotlib работает нормально в первый раз, но зависает при повторных запусках, пока ядро ​​не будет перезапущено
Фактическая версия Python в среде conda при работе в Google Colab?
Получение данных из визуализаций Power BI в Jupyter Notebook
Как устранить ошибку ModuleNotFoundError при попытке импортировать локальную библиотеку .ipynb в блокнот Jupyter?
Синтаксическая ошибка: здесь невозможно назначить вызов функции. Возможно, вы имели в виду «==» при использовании os.environ в Python
Ноутбук Jupyer не открывает папку