引数の前に余分なスペースが追加されています。などのインタラクティブシェルにおける例Python argparseは、引数の前に余分なスペースを追加します。
def parse_arguments():
parser = argparse.ArgumentParser(
prog='sample',
description='bla bla',
parser.add_argument('-s', '--search', dest='pattern', required=True,
help='search path pattern (e.g. /dir1/dir2/*.ext)')
args = parser.parse_args()
if args.pattern[0] == ' ':
print "One space is added to the argument"
return args
以下のコードとテストに基づいて:sys.argv = ['', '-s=/Users/user/Desktop/test']
として引数を提供
import sys
sys.argv = ['', '-s /Users/user/Desktop/test']
execfile('test.py')
(https://stackoverflow.com/a/36376287/2101864から鼓舞)そのような付加を生じません。
これは文書化された動作ですか、何か迷っていますか?通常のユーザーは、引数タグと値の間にスペースを追加することが一般的なためです。
詳細については、@aneroidありがとうございます。 –