Bildschirminhalt leeren

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
sprudel
User
Beiträge: 245
Registriert: Donnerstag 8. März 2007, 17:12

Bildschirminhalt leeren

Beitragvon sprudel » Freitag 9. März 2007, 17:06

Hallo.
Gibt es denn in Python ein Plattformübergreifendes leeren des Bildschirms, ähnlich dem cls unter Windows, und dem clear unter Linux? Wäre mir wirklich wichtig
Benutzeravatar
Dill
User
Beiträge: 470
Registriert: Mittwoch 10. Januar 2007, 14:52
Wohnort: Köln

Beitragvon Dill » Freitag 9. März 2007, 17:13

nicht schön, aber evtl. ein anfang :)

Code: Alles auswählen

def cls():
  if os.name == "posix":
    os.system('clear')
  else:
    os.system('cls')
sprudel
User
Beiträge: 245
Registriert: Donnerstag 8. März 2007, 17:12

Beitragvon sprudel » Freitag 9. März 2007, 17:16

Hi. Darauf bin ich auch schon gekommen. Aber irgendwie ist das nicht so schön. Geht es denn auch noch irgendwie anders?
Benutzeravatar
Dill
User
Beiträge: 470
Registriert: Mittwoch 10. Januar 2007, 14:52
Wohnort: Köln

Beitragvon Dill » Freitag 9. März 2007, 17:19

http://newcenturycomputers.net/projects/wconio.html

Code: Alles auswählen

WConio.clreol() #clears from the cursor position to the end of the line.
WConio.clrscr() #clears the screen and homes the cursor.
sprudel
User
Beiträge: 245
Registriert: Donnerstag 8. März 2007, 17:12

Beitragvon sprudel » Freitag 9. März 2007, 17:35

Hi. Ist es auch irgendwie mit den Standartpythonbefehlen möglich? Wäre halt wesentlich geschickter. Trotzdem vielen Dank
Benutzeravatar
Masaru
User
Beiträge: 425
Registriert: Mittwoch 4. August 2004, 22:17

Beitragvon Masaru » Freitag 9. März 2007, 19:16

:D
sprudel
User
Beiträge: 245
Registriert: Donnerstag 8. März 2007, 17:12

Beitragvon sprudel » Freitag 9. März 2007, 19:34

Masaru hat geschrieben::D

Und ich dachte damit geht alles... so kann man sich täuschen :lol:
Benutzeravatar
Masaru
User
Beiträge: 425
Registriert: Mittwoch 4. August 2004, 22:17

Beitragvon Masaru » Freitag 9. März 2007, 19:39

Alles wir nie gehen ;) ... es geht aber verdammt vieles. Und mit der Möglichkeit der Einbindung von Libraries die eben nicht bei den Standard-Batterien mit enthalten sind, hast Du eine richtig große Menge an Möglichkeiten und Ansätzen zur Problembewältigung.

Eine 100%ige Lösung für jede Frage gibt es halt im wahren Leben nicht :roll: .
Benutzeravatar
nkoehring
User
Beiträge: 543
Registriert: Mittwoch 7. Februar 2007, 17:37
Wohnort: naehe Halle/Saale
Kontaktdaten:

Beitragvon nkoehring » Freitag 9. März 2007, 20:16

Wenn du solche Sachen in der Konsole machen moechtest, koenntest du auch Ncurses verwenden. Wobei ich glaube, dass es Overkill ist, falls du wirklich nur den Bildschirm leeren moechtest und nicht die Konsole wie ein "Fenster" verwenden. ;)

Infos zu Curses in Python findest du in der offiziellen Dokumentation auf Python.org.
Benutzeravatar
BlackVivi
User
Beiträge: 762
Registriert: Samstag 9. Dezember 2006, 14:29
Kontaktdaten:

Beitragvon BlackVivi » Freitag 9. März 2007, 20:40

Was findest du an

Code: Alles auswählen

def cls():
  if os.name == "posix":
    os.system('clear')
  else:
    os.system('cls')


So unschön oO Hab ich irgendwie was nicht mitgekriegt *kopfkratz*
matott

Beitragvon matott » Freitag 9. März 2007, 20:42

Wenn du nur für VT100 schreiben willst:

Code: Alles auswählen

# \33 = \e | ESC
print "\33[2J"
sprudel
User
Beiträge: 245
Registriert: Donnerstag 8. März 2007, 17:12

Beitragvon sprudel » Freitag 9. März 2007, 20:56

BlackVivi hat geschrieben:Was findest du an

Code: Alles auswählen

def cls():
  if os.name == "posix":
    os.system('clear')
  else:
    os.system('cls')


So unschön oO Hab ich irgendwie was nicht mitgekriegt *kopfkratz*


Nunja, was ist wenn ich es zb. auf einem Mac Rechner verwenden will? Ich hab keinen, und weiß über die Dinger quasi garnichts. Aber dann wäre ich doch irgendwie schon verloren.


@matott:
wtf ist VT100???
Benutzeravatar
BlackVivi
User
Beiträge: 762
Registriert: Samstag 9. Dezember 2006, 14:29
Kontaktdaten:

Beitragvon BlackVivi » Freitag 9. März 2007, 20:59

Auf einem Mac Rechner läuft imho auch ein POSIX Betriebsystem und läuft mit einer Bash Konsole oO'' Die den Clear Befehl unterstützt... und ansonsten entdeck ich auch sonst nichts unsauberes...
Ene Uran
User
Beiträge: 125
Registriert: Sonntag 17. September 2006, 20:14
Wohnort: Hollywood

Beitragvon Ene Uran » Freitag 9. März 2007, 21:06

Wenn es nicht wichtig ist wo der 'cursor' ist, dann:

Code: Alles auswählen

print '\n' * 40
Atomkraftwerkaktienbesitzer
matott

Beitragvon matott » Freitag 9. März 2007, 21:40

sprudel hat geschrieben:wtf ist VT100???

Siehe: http://en.wikipedia.org/wiki/VT100
wikipedia hat geschrieben:[...] which became the de facto standard used by terminal emulators [...]

Funktioniert also oft, aber nicht immer ;).
Vielleicht sollte man aber wirklich ncurses verwenden, da es gerade für Terminalabstraktion entwickelt wurde und auch heute nicht alle Konsolen VT100 kompatibel sind. Ich verwende z.B. rxvt-unicode, wobei:

Code: Alles auswählen

echo -e "\e[2J"

nicht den selben Effekt hat wie;

Gerade wenn man auf Portabilität setzt, sollte man hier also externe Libraries benutzen.

Wer ist online?

Mitglieder in diesem Forum: Baidu [Spider], Bing [Bot], Google [Bot], r.barrios