2012-04-02 8 views
-3

" - verbose"と "--live"の2つのオプションのブール引数と2つの必須の文字列引数 "base"と "pattern"を使用するスクリプトを記述します。 argparseを使ってコマンドライン処理を設定してください。argparseコーディングの問題

これは私がこれまでに質問してきたコードですが、私は近づいていますが、何かが正しくないことを知っています。どんな助けもありがとうございます。すばらしい有益なフィードバックをいただきありがとうございます。

def main(): 
    import argparse 
    parser = argparse.ArgumentParser(description='') 
    parser.add_argument('base', type=str) 
    parser.add_arguemnt('--verbose', action='store_true') 
    parser.add_argument('pattern', type=str) 
    parser.add_arguemnt('--live', action='store_true') 

    args = parser.parse_args() 

    print(args.base(args.pattern)) 
+0

具体的にはどのような問題がありますか? – dm03514

+0

私は1つではないかもしれないと思う、これは上記の問題で私の10番目の試みです。私のコードはあなたに見えますか?私のプリント機能が正しいかどうか、または4つの異なるadd_argumentsが必要かどうかはわかりませんでした。 –

+0

@Riaz Rizviあなたは[email protected]で私を愛してくれますか?私はあなたと話したいことがいくつかあります。あなたの時間をありがとう –

答えて

0

文字列引数はデフォルトでは必須ではないため、そのことを明記する必要があります。また、引数を使用するprint文も正しくありません。

のpythonが配置されなければならないものの、トップの#!は/ usr/binに/ Pythonは、直接呼び出されるスクリプトを可能に
#!/usr/bin/python 
import argparse 

if __name__=="__main__": 
    parser = argparse.ArgumentParser(description='eg $python myargs.py --base arg1 --pattern arg2 [--verbose] [--live]') 
    parser.add_argument('--base', required=True, type=str) 
    parser.add_argument('--pattern', required=True, type=str) 
    parser.add_argument('--verbose', action='store_true') 
    parser.add_argument('--live', action='store_true') 

    args = parser.parse_args() 

    print "args.base=" + str(args.base) 
    print "args.pattern=" + str(args.pattern) 
    print "args.verbose=" + str(args.verbose) 
    print "args.live=" + str(args.live) 

(確認のため、パイソン型$)、あなたはにファイルを設定する必要があります。実行許可がある($ chmod + x myargs.py)