2017-06-01 13 views
0

ncinfoコマンドでは、netcdfファイルの内容をcsh(例:ncinfo test.nc)から見ることができます。 ncinfoコマンドは実際にはPython関数 hereを呼び出します。私の質問は:どのように私はPythonシェルから直接ncinfo関数を使用するのですか?引数でPython関数を実行する

私は

from netCDF4.utils import ncinfo 
ncinfo() 

を試してみましたが、私は、関数にファイル名「test.nc」を渡す方法を見つけ出すことはできません。

編集:コメントに基づいて、私は質問が今

だと思うどのようにPythonシェル内部の「偽物」引数の引数を受け入れるようにgetopt.getoptsys.argvを使用する機能を養うために?

+2

あなたがリンクをたどる場合は、[ncinfo](https://github.com/Unidata/netcdf4-python/blob/master/netCDF4/utils.py#L427)にはないですPythonで関数の引数を受け入れます。 –

+0

次に、ファイル名をどのように渡すと思いますか?引数は 'sys.argv'から来ます...だから、'サブプロセス 'を使う必要があります –

+0

プログラムでデータを検査したいのであれば、なぜ 'netCDF4.utils.Dataset()'を使わないのですか?それはすべての重い持ち上げを行い、 'filename'をとる。指摘したように、 'ncinfo()'はcmd-lineインターフェースです。 – AChampion

答えて

2

Alan Leuthardjezは、コメントを指摘すると、関数を呼び出す前にsys.argvを手動で変更できます(変更可能であることはわかりませんでした)。だから、作業溶液を

from netCDF4.utils import ncinfo 
backup = sys.argv 
sys.argv = ['','test.nc'] 
ncinfo() 
sys.argv = backup 
関連する問題