Python-C-Api

Hiho,

ich bin gerade dabei ein Programm in C mit Gtk zu basteln.
Dabei wird der Skript-Code in ein Textfeld eingegeben und die Ausgaben (von Python) sollen in einem zweiten Textfeld wieder herauskommen.

Es funktioniert aber nur in soweit, als das ich PyRun_SimpleString verwende, aber der Output von Python erscheint immer in der Konsole.

Daher: Gibt es irgendeine Möglichkeit die Standardausgabekanäle des Python-Interpreters umzuleiten? (Ich könnte natürlich selbstdefinierte FUnktionen nehmen, z.B. gprint, oder so, das ist aber nicht Sinn der Sache, außerdem soll es auch keine interaktive Konsole (wie IDLE) sein)

mfg TLF

Hi!
Workaround:
Rufe den Python-Skript-Teil über die Konsole auf und leite das Ergebnis in eine Datei, die du dann Problemlos anzeigen kannst:
python myscript.py > erg.txt. Zu Beachten ist die Errorausgabe, die zusätzlich mit ERR> oder &2> o.ä. umgeleitet werden muss (je nach DOS/UNIX-Shell, wobei nicht alle Shells das unterstützen).

Grüße

Ralph

hiho

hmm, ja stimmmt, werde ich wohl ausprobieren,

eingefallen wäre mir auch noch der umweg über eine pipe (evtl. named)
unter windows funktioniert das bei IDLE ja auch über ein loopback-device, da darf ich mir das über ne datei wohl auch erlauben

mfg TLF