vielleicht ist der Titel nicht sehr klar, lassen Sie mich näher darauf eingehen.führen Sie eine Funktion (aus einer .py-Datei) von einer Linux-Konsole
Ich habe ein Python-Skript, das eine ppm-Datei öffnet, einen ausgewählten Filter (Rotationen ...) anwendet und ein neues Bild erzeugt. Bis hier läuft alles gut.
aber ich möchte die gleiche Sache über eine Linux-Konsole tun:
ppmfilter.py ROTD /path/imageIn.ppm /path/imageOut.ppm
hier ROTD der Name der Funktion ist, die eine Drehung anwenden.
Ich weiß nicht, wie das geht, ich bin auf der Suche nach einer Bibliothek, die mir erlauben wird, dies zu tun.
wir freuen uns auf Ihre Hilfe.
PS: Ich verwende Python 2.7
Ich würde ein 'if __name__ ==" __main __ "' hinzufügen, damit Sie das Modul immer noch importieren können, ohne es zu versuchen. Außerdem sollten Sie 'sys.argv [1]', nicht 'sys.argv [0]' (welches der Name des Skripts ist) nachschlagen. –
@Thomas: Danke für die Tipps, ich habe es behoben. – terminus
Kühl.Um noch pythischer zu sein, könnten Sie 'if hasattr (symbol," __call __ ")' testen, anstatt nach dem Funktionstyp zu suchen. Auf diese Weise können Sie eine Klasse (oder ein anderes aufrufbares Objekt) auf dieselbe Weise aufrufen und einen Import speichern. –