2017-12-04 8 views
0

私は、コマンドラインでパラメータを提供するために、sys.argvのを使用してきました。 paramはパスからファイル名には、何もすることができファイルを特定の場所に保存するためのコマンドライン引数の指定方法は?

python filename.py param1 param2 

:私はこのコードを実行すると

def function(param1, param2): 
    # Stuff goes here. 

def main(): 
    ... sys.argv[1] ... 
    ... sys.argv[2] ... 

if __name__ == '__main__': 
main() 

今、コマンドは次のようなものになります。

例えば、私はこの方法を持っています必要に応じて設定します。

私の質問は、ファイルを保存する宛先を設定するためのパラメータを設定する方法です。たとえば、ピクルファイルなどです。 param3は基本的に保存するファイルの送信先である

python filename.py param1 param2 param3 

:私はこのような何かをする方法を知っていただきたいと思います。 sysのようなものがあれば、param1とparam2を使ってファイルを保存する場所を提供することができます。

助けてください。ありがとう。

+1

例を挙げて説明してください。 – Ora

+0

param1、param2、param3とは何ですか?彼らは何をしていますか? – yash

答えて

1

クイックダーティスクリプトを設定しようとしていない限り、sys.argvを直接使用してスクリプト引数を取得することはまれです。代わりに、コマンドライン引数パーサーを使用します。堅牢で使いやすいPythonがたくさんあります。

ここに、Pythonに付属のデフォルトの引数パーザを使用した簡単な例を示します。 argparse。スクリプトは単一の引数、つまりファイルパスを想定しています。

import argparse 

def get_args(): 
    parser = argparse.ArgumentParser() 
    parser.add_argument('file_path', help='A file path') 
    return parser.parse_args() 

def main(): 
    args = get_args() 
    if args.file_path: 
     with open(args.file_path) as file: 
      file.write('Lorem ipsum dolor sit.') 
関連する問題