Передача имени файла в подпроцесс из Python - PullRequest
1 голос
/ 28 сентября 2019

У меня проблемы с вызовом внешней команды из подпрограммы Python.Я уже писал код, который вызывает простые команды, но эта немного сложнее, и я просто теряюсь и ничего не получаю.

Команда является одной из команд GMT (Generic Mapping Tools) - "gmtselect", которая принимает файл координат широты / долготы и видит, какие из них находятся в пределах многоугольника, определенного серией точек широты и долготы вотдельный файл.

Если мы назовем эти два файла «points.txt» и «polygon.txt», то из командной строки вызов будет:

gmtselect <polygon.txt -Fpolygon.txt 

Я пробовал разные способы, но не могуПосмотрите, как это сделать, используя subprocess.Popen

Любые обоснованные предложения?

1 Ответ

2 голосов
/ 28 сентября 2019
import subprocess

with open('filename.txt') as f:
    subprocess.run(['gmtselect', '-Fother.txt'], stdin=f)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...