0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

私のPython環境構築〜基礎編

Last updated at Posted at 2025-08-04

基礎編では、新しいプロジェクトの開始から依存関係の更新まで、1ステップずつ説明します。

前提

  • Apple Silicon Macを使用
  • Homebrewによるパッケージ管理

環境構築 Step-by-step

ホームディレクトリ(/Users/xxxxx)から開始するものとする。

プロジェクトの作成

uv initで新しいプロジェクトnew-projectを作成する。

$ uv init new-project
出力
uv init new-project
Initialized project `new-project` at `/Users/xxxxx/new-project`

new-projectディレクトリに移動する。

$ cd /Users/xxxxx/new-project

この時点で、new-projectディレクトリには、以下の6つのファイルが作成されている。

.git
.gitignore
.python-version
README.md
main.py
pyproject.toml

.git .gitignoreは、Git関連ファイル(Git編GitHub連携編)。

.python-versionの内容。

3.13

README.mdは空。

main.pyの内容は必要最低限のテンプレート。

def main():
    print("Hello from new-project!")


if __name__ == "__main__":
    main()

とりあえず、uv runで実行してみる。

$ uv run main.py
出力
uv run main.py 
Hello from new-project!

pyproject.tomlの内容。依存関係dependenciesは、まだ記述なし。

[project]
name = "new-project"
version = "0.1.0"
description = "Add your description here"
readme = "README.md"
requires-python = ">=3.13"
dependencies = []

Pythonのバージョンを指定して仮想環境を作る。システムデフォルトのバージョンのままならば、uv envだけでよい。

$ uv venv --python 3.13.5
出力
uv venv --python 3.13.5
Using CPython 3.13.5
Creating virtual environment at: .venv
Activate with: source .venv/bin/activate

仮想環境関係ファイルを保管する.venvディレクトリが作成される。

仮想環境を有効にする。

$ source .venv/bin/activate

uv pip installで必要なパッケージをインストールする。

$ uv pip install requests
出力
uv pip install requests
Resolved 5 packages in 51ms
Installed 5 packages in 7ms
 + certifi==2025.7.14
 + charset-normalizer==3.4.2
 + idna==3.10
 + requests==2.32.4
 + urllib3==2.5.0

依存関係の管理

必要に応じて、依存関係をプロジェクトファイルに追加する。

$ uv add requests
出力
uv add requests
Resolved 6 packages in 4ms
Audited 5 packages in 0.04ms

依存関係の詳細を記録したuv.lockファイルが作成される。

追加後のpyproject.tomlの内容。dependenciesに依存情報"requests>=2.32.4",が追記されている。

[project]
name = "new-project"
version = "0.1.0"
description = "Add your description here"
readme = "README.md"
requires-python = ">=3.13"
dependencies = [
    "requests>=2.32.4",
]

uv removepyproject.toml内の依存情報を削除できる。

uv addで、依存関係も含めてpandasをインストールしてみる。

$ uv add pandas
出力
uv add pandas
Resolved 12 packages in 60ms
Installed 6 packages in 40ms
 + numpy==2.3.2
 + pandas==2.3.1
 + python-dateutil==2.9.0.post0
 + pytz==2025.2
 + six==1.17.0
 + tzdata==2025.2

追加後のpyproject.tomlの内容。依存情報"pandas>=2.3.1",が追記されている。

[project]
name = "new-project"
version = "0.1.0"
description = "Add your description here"
readme = "README.md"
requires-python = ">=3.13"
dependencies = [
    "pandas>=2.3.1",
    "requests>=2.32.4",
]

uv treeで確認した依存関係の構造はこんな感じ。

出力
uv tree
Resolved 12 packages in 0.75ms
new-project v0.1.0
├── pandas v2.3.1
│   ├── numpy v2.3.2
│   ├── python-dateutil v2.9.0.post0
│   │   └── six v1.17.0
│   ├── pytz v2025.2
│   └── tzdata v2025.2
└── requests v2.32.4
    ├── certifi v2025.7.14
    ├── charset-normalizer v3.4.2
    ├── idna v3.10
    └── urllib3 v2.5.0

手動でpyproject.tomlから"pandas>=2.3.1",行を削除した後、環境をuv syncで同期してみる。

$ uv sync

pandasとその依存パッケージがアンインストールされる。

出力
uv sync
Resolved 6 packages in 2ms
Uninstalled 6 packages in 160ms
 - numpy==2.3.2
 - pandas==2.3.1
 - python-dateutil==2.9.0.post0
 - pytz==2025.2
 - six==1.17.0
 - tzdata==2025.2

Pythonのインタプリタで確認。

Python 3.13.5 (main, Jul 23 2025, 00:18:28) [Clang 20.1.4 ] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import requests
>>> import pandas
Traceback (most recent call last):
  File "<python-input-1>", line 1, in <module>
    import pandas
ModuleNotFoundError: No module named 'pandas'
>>> 

パッケージ内の依存関係も、uvが自動管理してくれるので便利。

まとめ

一連の流れをまとめます。

  1. uv init [project]
  2. [project] ディレクトリに移動
  3. uv venv --python [version]
  4. uv pip install [packages]またはuv add [packages]
  5. 必要に応じて、uv remove [packages]またはマニュアルでpyproject.tomlを編集、uv syncで環境を同期。

Tips

入力ウインドウが、trminalモード>_なのか、AgentモードAなのか気をつける(ウインドウ左下にアイコンが表示されている)。Agentモードのときにコマンドを入力すると、AIがいったん考えた後に同じコマンドを入力するので、二度手間で時間もかかりイラつくので注意。
+Iで、terminalとAgentモードを切り替えられる。

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?