0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【Windows】ローカルPCにvenvでpythonの環境構築

Last updated at Posted at 2023-10-24

以下の理由で、ローカルPC(Windows)上にvenvでpythonの環境構築をしました。

  • openaiやlangchainなどのパッケージをcondaで管理するのが複雑だったため
  • ネットワークの関係でDockerが使用できないため

詰まった箇所があったのでメモです。

環境

  • OS: windows11
  • python: 3.10.11

やりたいこと

  • pythonをローカルPC(windows)で実行
    • バージョン管理ツール(asdfなど)やパッケージ管理ツール(conda, poetry)を使用しない
    • pipを使いたい

手順

  1. 以下から、python3(任意のバージョン)のWindows用インストーラーをダウンロード
    https://www.python.org/downloads/
  • 仮想環境の作成は、バージョン3.5からpyvenvではなくvenvが推奨されている

  1. インストーラーを起動し、pythonをインストール
  • Add Python 3.x to PATHにチェックを入れ、パスを通す

  1. Windows PowerShellで確認
$ python -V 

Python 3.10.11

  1. 任意のディレクトリで環境を作成
    ○○○に任意の環境名を入れる。
$ mkdir xxx
$ cd xxx
$ python -m venv ○○○

  1. 作成した環境のアクティベート
    下記を実行後、プロンプトの先頭に(.○○○)が表示されていればアクティベート成功
$ Set-ExecutionPolicy RemoteSigned -Scope CurrentUser -Force
$ .○○○/Scripts/Activate.ps1
  • スクリプトを実行するためにPowerShellでは$ Set-ExecutionPolicy RemoteSigned -Scope CurrentUser -Forceを実行する必要がある

以下メモ

  • パッケージのインストール
    アクティベートしている環境で任意のパッケージのインストール
$ pip install xxx

  • 現環境にpipでインストールされたパッケージをrequirement.txtに出力
$ pip freeze > requirements.txt
  • pip install -r requirements.txtで環境間でパッケージを共有できるようになる

  • デアクティベート
$ deactivate

感想

  • venvでの環境構築はシンプルでわかりやすかった。ローカルではvenvを使用し、pythonのバージョン管理やパッケージの管理は必要になったタイミングで導入すると理解しやすいと感じた。

参考

https://docs.python.org/ja/3/library/venv.html
https://qiita.com/fiftystorm36/items/b2fd47cf32c7694adc2e
https://www.python.jp/install/windows/venv.html
https://note.nkmk.me/python-pip-install-requirements/#requirementstxt

0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?