私はこの問題に直面しており、解決策を見つけました。しかし、私はそれがなぜこのように振る舞うのか理解していません。pythonのコマンドライン引数は引用符で囲む必要がありますか?
実行するscript1.pyがあるとします。これには、コマンドラインからの2つの入力と、パスと、日付が必要です。/root/x/y *には、/ root/x/y1 /と/ root/x/y2 /の2つのフォルダがあります。そして、両方のフォルダの下に20160621のフォルダがあります。
スクリプトは次のようになります。
if __name__ == "__main__":
start_time = time.time()
print sys.argv[1], sys.argv[2]
main(expPath = sys.argv[1], expDate = sys.argv[2])
私は
python script1.py /root/x/y*/ 20160621
してスクリプトを呼び出す場合、私は私場合は時々、私は
/root/x/y1/ /root/x/y2/
を取得しています、しかし
/root/x/y*/ 20160621
のプリントアウトを取得するために期待両方の引数を引用してスクリプトを呼び出すと、期待しています。
python script1.py '/root/x/y*/' '20160621'
このような違いについては、何らかの理由または説明がありますか?