[Python-de] Freie Ausgabe auf Zeilen des Displays

mab mab at iee.lu
Mon Apr 26 15:50:45 CEST 2004


Thorsten Kampe wrote:

>Ja, der Betreff ist etwas kryptisch, aber mir fiel nichts besseres
>ein...
>
>Ich möchte ein Skript schreiben, das auf n Zeilen ausgibt. So etwas
>wie...
>
>1    8    8     8     15
>2    2    9     9     9
>3    3    3     10    10
>4 -> 4 -> 4 --> 11 -> 11
>5    5    5     12    12
>6    6    6     13    13
>7    7    7     14    14
>
>... wohlgemerkt, nicht nebeneinander, sondern "an der gleichen
>Stelle". Normalerweise kann ich mit "print" ja immer nur eine neue
>Zeile "aufmachen".
>
>Gibt so etwas wie "n DISP" (auf dem HP48) unter Python, mit dem ich
>wahlfrei auf Zeile n des Displays schreiben kann, oder wie ließe sich
>das machen?
>
>Thorsten
>
>
>_______________________________________________
>python-de maillist  -  python-de at python.net
>http://python.net/mailman/listinfo/python-de
>  
>
Hallo Thorsten,
wenn ich das richtig verstanden habe, möchtest du beim PRINT
die Zeile angeben, in der die Ausgabe statt finden soll.

Wenn dein Terminal ANSI unterstützt, ist das relativ einfach mit einer
Escape-Sequenz zu lösen.

pos_x = 5
pos_y = 10
print "\033[" + str( pos_x ) + ";" + str ( pos_y ) + "H" +  "Hello World"

Das kleine Beispiel gibt Hello World an  Spalte 5  / Zeile 10 des 
Bildschirms aus.

Unter Windows musst Du allerdings sicherstellen, dass die ansi.sys 
geladen wird,
sonst geht das nicht. Es gibt auch noch Sequenzen für verschiedene Farben,
Bildschirm löschen, usw... Ein gutes Beispiel ist die "ansi.py" die man 
ohne weiteres
bei Google findet.

PS:    Hab auch ziemlich lange danach gesucht

Ich hoffe ich konnte dir bei deinem Problem helfen,
CU
Marco