argparse を使用して読み取り用にファイルを開きたい。cmd では、次のようにする必要があります: my_program.py /filepath
それが私の試みです:
parser = argparse.ArgumentParser()
parser.add_argument('file', type = file)
args = parser.parse_args()
ドキュメントをご覧ください: https://docs.python.org/3/library/argparse.html#type
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('file', type=argparse.FileType('r'))
args = parser.parse_args()
print(args.file.readlines())
引数の型は文字列でなければなりません (これがデフォルトです)。したがって、次のようにします。
parser = argparse.ArgumentParser()
parser.add_argument('filename')
args = parser.parse_args()
with open(args.filename) as file:
# do stuff here
-h
この実装により、「ファイル名」パラメーターをオプションにすることができ、ユーザーがor--help
引数を入力した場合に簡単な説明を与えることができます。
parser = argparse.ArgumentParser(description='Foo is a program that does things')
parser.add_argument('filename', nargs='?')
args = parser.parse_args()
if args.filename is not None:
print('The file name is {}'.format(args.filename))
else:
print('Oh well ; No args, no problems')