LoginSignup
2
2

More than 3 years have passed since last update.

python 仮想環境 Pipenv

Posted at

前提環境

  • Windows10 64bit
  • python3.8.2

Pipenv

インストール

D:\work> pip install pipenv
Collecting pipenv
  Using cached pipenv-2020.8.13-py2.py3-none-any.whl (3.9 MB)
Requirement already satisfied: pip>=18.0 in c:\users\username\appdata\local\programs\python\python38\lib\site-packages (from pipenv) (20.2.3)
Requirement already satisfied: certifi in c:\users\username\appdata\local\programs\python\python38\lib\site-packages (from pipenv) (2020.6.20)
Requirement already satisfied: setuptools>=36.2.1 in c:\users\username\appdata\local\programs\python\python38\lib\site-packages (from pipenv) (41.2.0)
Requirement already satisfied: virtualenv in c:\users\username\appdata\local\programs\python\python38\lib\site-packages (from pipenv) (20.0.33)
Requirement already satisfied: virtualenv-clone>=0.2.5 in c:\users\username\appdata\local\programs\python\python38\lib\site-packages (from pipenv) (0.5.4)
Requirement already satisfied: filelock<4,>=3.0.0 in c:\users\username\appdata\local\programs\python\python38\lib\site-packages (from virtualenv->pipenv) (3.0.12)
Requirement already satisfied: distlib<1,>=0.3.1 in c:\users\username\appdata\local\programs\python\python38\lib\site-packages (from virtualenv->pipenv) (0.3.1)
Requirement already satisfied: appdirs<2,>=1.4.3 in c:\users\username\appdata\local\programs\python\python38\lib\site-packages (from virtualenv->pipenv) (1.4.4)
Requirement already satisfied: six<2,>=1.9.0 in c:\users\username\appdata\local\programs\python\python38\lib\site-packages (from virtualenv->pipenv) (1.15.0)
Installing collected packages: pipenv
Successfully installed pipenv-2020.8.13

インストール確認

D:\work> pipenv
Usage: pipenv [OPTIONS] COMMAND [ARGS]...

Options:
  --where                         Output project home information.
  --venv                          Output virtualenv information.
  --py                            Output Python interpreter information.
  --envs                          Output Environment Variable options.
  --rm                            Remove the virtualenv.
  --bare                          Minimal output.
  --completion                    Output completion (to be executed by the
                                  shell).

  --man                           Display manpage.
  --support                       Output diagnostic information for use in
                                  GitHub issues.

  --site-packages / --no-site-packages
                                  Enable site-packages for the virtualenv.
                                  [env var: PIPENV_SITE_PACKAGES]

  --python TEXT                   Specify which version of Python virtualenv
                                  should use.

  --three / --two                 Use Python 3/2 when creating virtualenv.
  --clear                         Clears caches (pipenv, pip, and pip-tools).
                                  [env var: PIPENV_CLEAR]

  -v, --verbose                   Verbose mode.
  --pypi-mirror TEXT              Specify a PyPI mirror.
  --version                       Show the version and exit.
  -h, --help                      Show this message and exit.


Usage Examples:
   Create a new project using Python 3.7, specifically:
   $ pipenv --python 3.7

   Remove project virtualenv (inferred from current directory):
   $ pipenv --rm

   Install all dependencies for a project (including dev):
   $ pipenv install --dev

   Create a lockfile containing pre-releases:
   $ pipenv lock --pre

   Show a graph of your installed dependencies:
   $ pipenv graph

   Check your installed dependencies for security vulnerabilities:
   $ pipenv check

   Install a local setup.py into your virtual environment/Pipfile:
   $ pipenv install -e .

   Use a lower-level pip command:
   $ pipenv run pip freeze

Commands:
  check      Checks for PyUp Safety security vulnerabilities and against PEP
             508 markers provided in Pipfile.

  clean      Uninstalls all packages not specified in Pipfile.lock.
  graph      Displays currently-installed dependency graph information.
  install    Installs provided packages and adds them to Pipfile, or (if no
             packages are given), installs all packages from Pipfile.

  lock       Generates Pipfile.lock.
  open       View a given module in your editor.
  run        Spawns a command installed into the virtualenv.
  shell      Spawns a shell within the virtualenv.
  sync       Installs all packages specified in Pipfile.lock.
  uninstall  Uninstalls a provided package and removes it from Pipfile.
  update     Runs lock, then sync.

仮想環境作成

仮想環境用のフォルダを用意

D:\work> mkdir mytestenv


    ディレクトリ: D:\work


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----       2020/10/07     18:55                mytestenv

仮想環境作成

D:\work> cd mytestenv
D:\work\mytestenv> pipenv install
Creating a virtualenv for this project…
Pipfile: D:\work\mytestenv\Pipfile
Using C:/Users/username/AppData/Local/Programs/Python/Python38/python.exe (3.8.2) to create virtualenv…
[=== ] Creating virtual environment...created virtual environment CPython3.8.2.final.0-64 in 4929ms
  creator CPython3Windows(dest=C:\Users\username\.virtualenvs\mytestenv-1lNwFUaT, clear=False, global=False)
  seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=C:\Users\username\AppData\Local\pypa\virtualenv)
    added seed packages: pip==20.2.3, setuptools==50.3.0, wheel==0.35.1
  activators BashActivator,BatchActivator,FishActivator,PowerShellActivator,PythonActivator,XonshActivator

Successfully created virtual environment!
Virtualenv location: C:\Users\username\.virtualenvs\mytestenv-1lNwFUaT
Creating a Pipfile for this project…
Pipfile.lock not found, creating…
Locking [dev-packages] dependencies…
Locking [packages] dependencies…
Updated Pipfile.lock (db4242)!
Installing dependencies from Pipfile.lock (db4242)…
  ================================ 0/0 - 00:00:00
To activate this project's virtualenv, run pipenv shell.
Alternatively, run a command inside the virtualenv with pipenv run.

仮想環境に切り替え

PS D:\work\mytestenv> pipenv shell
切り替わった状態
Launching subshell in virtual environment…
Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.

新しいクロスプラットフォームの PowerShell をお試しください https://aka.ms/pscore6
PS D:\work\mytestenv> 
試しにライブラリ追加
D:\work\mytestenv> pip list
Package    Version
---------- -------
pip        20.2.3
setuptools 50.3.0
wheel      0.35.1

D:\work\mytestenv> pip install numpy
Collecting numpy
  Using cached numpy-1.19.2-cp38-cp38-win_amd64.whl (13.0 MB)
Installing collected packages: numpy
Successfully installed numpy-1.19.2

D:\work\mytestenv> pip list
Package    Version
---------- -------
numpy      1.19.2
pip        20.2.3
setuptools 50.3.0
wheel      0.35.1
仮想環境から戻る
D:\work\mytestenv> exit・・・これで戻れる
D:\work\mytestenv> pip list・・・本当に戻ったか確認
Package                          Version
-------------------------------- ---------
appdirs                          1.4.4
asgiref                          3.2.7
blinker                          1.4
(省略)

おわり

pythonのバージョン切り替えはまだマシンに別バージョンのpythonをインストールしたいといけないぽく見えるので、
また今度。

pythonのバージョン指定

こうやるらしい。

pipenv --python 3.6
pipenv --python 2.7.14
2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2