0
0

python+ryeでプロジェクト作成の流れ

Last updated at Posted at 2024-05-19

ryeを使ったpythonプロジェクト作成の流れ。
きっとすぐ忘れるのでメモを残す。

環境

windows11
rye 0.33.0

プロジェクト作成の流れ

  1. プロジェクトを作成する
  2. pythonのバージョンを指定する
  3. ryeの環境と設定を同期する
  4. 使いたいライブラリを追加する

やってみる

1. プロジェクト作成する

# プロジェクト作成
# このタイミングで'git init'もしてくれてるっぽい
PS D:\projects> rye init test_project
success: Initialized project in D:\projects\test_project
  Run `rye sync` to get started

# 出来上がったものを確認してみる
PS D:\projects> tree .\test_project\ /f
D:\PROJECTS\TEST_PROJECT
  .python-version
  README.md
  .gitignore
  pyproject.toml

└─src
    └─test_project
            __init__.py

2. pythonのバージョンを指定する

# 作成したプロジェクトに移動
PS D:\projects> cd .\test_project\
# 使用可能なpythonのバージョン確認
PS D:\projects\test_project> rye toolchain list --include-downloadable
cpython@3.12.3 (C:\Users\XXXXX\.rye\py\cpython@3.12.3\python.exe)
cpython@3.12.2 (downloadable)
cpython@3.12.1 (downloadable)
~以下略~

# プロジェクトで使用するpythonのバージョンを指定する
PS D:\projects\test_project> rye pin 3.12.3
pinned 3.12.3 in D:\projects\test_project\.python-version

3. ryeの環境と設定を同期する

# 同期
PS D:\projects\test_project> rye sync
Initializing new virtualenv in D:\projects\test_project\.venv
Python version: cpython@3.12.3
Generating production lockfile: D:\projects\test_project\requirements.lock
Generating dev lockfile: D:\projects\test_project\requirements-dev.lock
Installing dependencies
   Built file:///D:/projects/test_project                                        Built 1 editable in 2.75s
Installed 1 package in 172ms
 + test-project==0.1.0 (from file:///D:/projects/test_project)
Done!

4. 使いたいライブラリを追加する

# 今回はpandas入れてみる
PS D:\projects\test_project> rye add pandas
Added pandas>=2.2.2 as regular dependency
Reusing already existing virtualenv
Generating production lockfile: \\?\D:\projects\test_project\requirements.lock
Generating dev lockfile: \\?\D:\projects\test_project\requirements-dev.lock
Installing dependencies
   Built file:///D:/projects/test_project                                        Built 1 editable in 2.79s
Resolved 6 packages in 16ms
Downloaded 6 packages in 12.80s
Uninstalled 1 package in 1.14s
Installed 7 packages in 3m 03s
 + numpy==1.26.4
 + pandas==2.2.2
 + python-dateutil==2.9.0.post0
 + pytz==2024.1
 + six==1.16.0
 - test-project==0.1.0 (from file:///D:/projects/test_project)
 + test-project==0.1.0 (from file:///D:/projects/test_project)
 + tzdata==2024.1
Done!

# 開発用のライブラリも入れてみる => --devで開発用
PS D:\projects\test_project> rye add --dev pytest
Added pytest>=8.2.0 as dev dependency
Reusing already existing virtualenv
Generating production lockfile: \\?\D:\projects\test_project\requirements.lock
Generating dev lockfile: \\?\D:\projects\test_project\requirements-dev.lock
Installing dependencies
   Built file:///D:/projects/test_project                                        Built 1 editable in 3.19s
Resolved 3 packages in 6ms
Downloaded 3 packages in 823ms
Uninstalled 1 package in 120ms
Installed 6 packages in 2.69s
 + colorama==0.4.6
 + iniconfig==2.0.0
 + packaging==24.0
 + pluggy==1.5.0
 + pytest==8.2.0
 - test-project==0.1.0 (from file:///D:/projects/test_project)
 + test-project==0.1.0 (from file:///D:/projects/test_project)
Done!

# 同期を忘れずに。
PS D:\projects\test_project> rye sync
Reusing already existing virtualenv
Generating production lockfile: D:\projects\test_project\requirements.lock
Generating dev lockfile: D:\projects\test_project\requirements-dev.lock
Installing dependencies
Audited 12 packages in 11ms
Done!

ryeのコマンド覚書

#プロジェクト作成
rye init 適当なプロジェクト名
# pythonのバージョン指定
rye pin 使いたいバージョン
# ライブラリ追加
rye add 使いたいライブラリ 
# 開発用ライブラリ追加
rye add --dev 使いたいライブラリ
# ライブラリ削除
rye remove 消したいライブラリ
# 同期 => initとかaddしたあとに実行しないと反映されなさそう
rye sync
# 実行
rye run python 実行したいファイル
# 追加したライブラリ表示
rye list 
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