GNU/Linux >> Linux の 問題 >  >> Linux

gdallocationinfo からの結果を Python の変数として保存する

この方法で標準出力をキャプチャできます:

from subprocess import Popen, PIPE

cmd = ['gdallocationinfo', '-geoloc', '-valonly', src, lng, lat]
p = Popen(cmd, stdout=PIPE)
p.wait()
val = p.stdout.read()

もう少し掘り下げて、私の質問に対する答えを見つけました:

os.system を使用する代わりに、結果を変数に格納するための正しい構文は次のとおりです:

result = os.popen('gdallocationinfo -valonly -wgs84 %s %s' % (lyr, loc)).read()

この投稿で説明されているサブプロセス構文を使用する必要があると思います:

Python内からgdalを呼び出すサブプロセス


Linux
  1. コマンドの出力をシェル変数に保存しますか?

  2. ファイルから変数を読み取る方法は?

  3. Pythonを3.4.3から3.5に更新する方法は??

  1. PythonでMSワードファイルからテキストを抽出する

  2. Python から Linux コマンドを実行する

  3. $PATH 変数から冗長なパスを削除します

  1. JavaからPythonスクリプトを実行するには?

  2. PHP から Python スクリプトを実行する

  3. Pythonでsudoで開始されたサブプロセスを強制終了する