(Японский перевод доступен здесь.)
В этой статье я собираюсь описать, как создать PiPFile, когда у нас есть разные инструкции по установке в зависимости от операционных систем.
В качестве реального примера я собираюсь создать PipFile, который можно использовать как на MacOS/Windows для Pytorch v0.4.1.
Для большинства пакетов Python инструкции по установке одинаковы независимо от операционных систем. Например, numpy
Может быть установлен так:
pipenv install numpy
Однако есть некоторые пакеты, которые имеют разные инструкции по установке в зависимости от операционных систем. Например, Pytorch V0.4.1 установлен следующей командой на MacOS:
pipenv install torch
В Windows он установлен так:
pipenv install http://download.pytorch.org/whl/cpu/torch-0.4.1-cp36-cp36m-win_amd64.whl
(В этом примере я предполагаю, что установка Pytorch для Python 3.6 без CUDA.)
В PipFile нам нужно позволить бывшему обучению работать на MacOS и позволить последним инструкциям работать в Windows. Как мы можем добиться этого?
Укажите sys_platform
В зависимости от операционных систем. В официальном документе Pipenv случай установки Pywinusb
Только в Windows описан.
Для pytorch v0.4.1, PipFile, который я на самом деле использую так:
[[source]] url = "https://pypi.org/simple" verify_ssl = true name = "pypi" [packages] theano = "*" tensorflow = "*" keras = "*" numpy = "*" scipy = "*" matplotlib = "*" seaborn = "*" jupyter = "*" jupyterlab = "*" ipython = "*" pandas = "*" scikit-learn = "*" spyder = "*" pillow = "*" torch = {version = "==0.4.1", sys_platform = "== 'darwin'"} "b4b7455" = {file = "http://download.pytorch.org/whl/cpu/torch-0.4.1-cp36-cp36m-win_amd64.whl", sys_platform = "== 'win32'"} torchvision = "*" [dev-packages] pylint = "*" [requires] python_version = "3.6"
В [Пакеты]
, есть две линии для Pytorch v0.4.1.
torch = {version = "==0.4.1", sys_platform = "== 'darwin'"} "b4b7455" = {file = "http://download.pytorch.org/whl/cpu/torch-0.4.1-cp36-cp36m-win_amd64.whl", sys_platform = "== 'win32'"}
В этих линиях sys_platform
Указывает, что это только для MacOS, а sys_platform
Указывает, что это только для Windows.
Кстати, "b4b7455"
написано на PipFile, когда Pipenv Установите http://download.pytorch.org/whl/cpu/torch-0.4.1-CP36-CP36M-WIN_AMD64.WHL
выполняется в Windows. Я добавил sys_platform.
тогда.
В Github я создал репозиторий, pipenv_cross-platform_example И поставьте PipFile и Pipfile.lock там, поэтому этот репозиторий может быть полезен в качестве примера.
Оригинал: “https://dev.to/tomoyukiaota/creating-a-pipfile-which-has-different-installation-instructions-depending-on-operating-systems-pytorch-v041-as-an-example-56i8”