2017-04-13 19 views
0

コード:認識されない引数:真

if __name__ == '__main__': 

    parser = argparse.ArgumentParser(description='Build dataset') 
    parser.add_argument('jpeg_dir', type=str, help='path to jpeg images') 
    parser.add_argument('nb_channels', type=int, help='number of image channels') 
    parser.add_argument('--img_size', default=256, type=int, 
         help='Desired Width == Height') 
    parser.add_argument('--do_plot', action="store_true", 
         help='Plot the images to make sure the data processing went OK') 
    args = parser.parse_args() 

エラー:私はここでbashシェルを使用しています

$ python make_dataset.py /home/abhishek/Lectures/columbia/deep_learning/project/DeepLearningImplementations/pix2pix/data/pix2pix/datasets 3 --img_size 256 --do_plot True 
usage: make_dataset.py [-h] [--img_size IMG_SIZE] [--do_plot] 
         jpeg_dir nb_channels 
make_dataset.py: error: unrecognized arguments: True 

。私はドキュメントに記載されている通り渡していますhttps://github.com/tdeboissiere/DeepLearningImplementations/tree/master/pix2pix/src/data

答えて

1

--do_plotを含めるだけで、わかる限り真を示す必要はありません。それはプロットをしたいと言っています。さらに、引数を取るように構成していませんでした。ソースコードの次の行で

if args.do_plot: 

あなたが実際にコマンドラインで--do_plotが含まれている場合、それは偽として評価されていない場合、それは、真と評価されます。

1

設定したとおり、--do_plotオプションは引数をとりません。 store_true引数が​​の場合、オプションが存在すると自動的に対応する変数にTrueが格納されます。

したがって、問題を防ぐために、Trueから--do_plotに渡すのをやめてください。

0

ここでの問題は仕様です:あなたは、引数なしのオプションとしてdo_plotを宣言した

parser.add_argument('--do_plot', action="store_true", 
        help='Plot ...') 

True以降は引数プロトコルには目的がありません。これは省略時のオプションです。存在する場合はオンにします。