いろは2986023 views
小学算数1194618 views
中学理科1626207 views
雑学1472593 views
中学社会667106 views
高校国語785655 views
MathPython491378 views
英語607877 views
ヒストリア284143 views
LaTeX957300 views
Help
Tools

English

argparse の引数に型を定義する(Python)

import argparse

parser = argparse.ArgumentParser()

parser.add_argument('name')
parser.add_argument('--age')
parser.add_argument('--mail')

args = parser.parse_args()

print(type(args.age))
print(args.age)

print(type(args.mail))
print(args.mail)

このコードを start.py に保存し、実行した結果:

python start.py Alice --age 28 --mail a@b.com

<class 'str'>
28
<class 'str'>
a@b.com

age の型が文字列になっています。これを整数値にしたいときは

import argparse

parser = argparse.ArgumentParser()

parser.add_argument('name')
parser.add_argument('--age', type=int)
parser.add_argument('--mail', type=str)

args = parser.parse_args()

print(type(args.age))
print(args.age)

print(type(args.mail))
print(args.mail)

とします。add_argument の type にキャストしたい型名、例えば int を入れると

python start.py Alice --age 28 --mail a@b.com

<class 'int'>
28
<class 'str'>
a@b.com

となります。