https://typer.tiangolo.com/#use-typer-in-your-code
https://typer.tiangolo.com/tutorial/parameter-types/path/
デコレータを使った記述方法
from pathlib import Path
from typing import Annotated
import typer
app = typer.Typer()
@app.command()
def function_sample(
file_path: Annotated[
Path, typer.Option(..., exists=True, file_okay=True, help="データのパス")
],
) -> None:
...
if __name__ == "__main__":
app()
実行時
python main.py \
--file-path file/to/path
- オプション引数はアンダースコア
_がハイフン-になっているので注意 - 引数がパスの場合はPathlibで受け取ると親フォルダ作成やパス連結など取り回しがしやすい
- typingのAnnotatedで型安全を保証