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
Bildschirminhalt leeren
nicht schön, aber evtl. ein anfang
Code: Alles auswählen
def cls():
if os.name == "posix":
os.system('clear')
else:
os.system('cls')
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.
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 .
Eine 100%ige Lösung für jede Frage gibt es halt im wahren Leben nicht .
- nkoehring
- User
- Beiträge: 543
- Registriert: Mittwoch 7. Februar 2007, 17:37
- Wohnort: naehe Halle/Saale
- Kontaktdaten:
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.
Infos zu Curses in Python findest du in der offiziellen Dokumentation auf Python.org.
[url=http://www.python-forum.de/post-86552.html]~ Wahnsinn ist auch nur eine andere Form der Intelligenz ~[/url]
hackerkey://v4sw6CYUShw5pr7Uck3ma3/4u7LNw2/3TXGm5l6+GSOarch/i2e6+t2b9GOen7g5RAPa2XsMr2
hackerkey://v4sw6CYUShw5pr7Uck3ma3/4u7LNw2/3TXGm5l6+GSOarch/i2e6+t2b9GOen7g5RAPa2XsMr2
Was findest du an
So unschön oO Hab ich irgendwie was nicht mitgekriegt *kopfkratz*
Code: Alles auswählen
def cls():
if os.name == "posix":
os.system('clear')
else:
os.system('cls')
Wenn du nur für VT100 schreiben willst:
Code: Alles auswählen
# \33 = \e | ESC
print "\33[2J"
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.BlackVivi hat geschrieben:Was findest du an
So unschön oO Hab ich irgendwie was nicht mitgekriegt *kopfkratz*Code: Alles auswählen
def cls(): if os.name == "posix": os.system('clear') else: os.system('cls')
@matott:
wtf ist VT100???
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...
Wenn es nicht wichtig ist wo der 'cursor' ist, dann:
Code: Alles auswählen
print '\n' * 40
Atomkraftwerkaktienbesitzer
Siehe: http://en.wikipedia.org/wiki/VT100sprudel hat geschrieben:wtf ist VT100???
Funktioniert also oft, aber nicht immer .wikipedia hat geschrieben:[...] which became the de facto standard used by terminal emulators [...]
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"
Code: Alles auswählen
^L
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Ähm... nein?Dill hat geschrieben:mac = macOs = linux = posix
Mac ist der Computer, Mac OS das dort verwendete OS, bis es von Mac OS X ersetzt wurde, welches auf BSD basiert welches mehr oder weniger POSIX-kompatibel sein sollte.
Und das alte Mac OS definiert os.name nicht als POSIX, Mac OS X schon eher. Andererseits ist das alte Mac OS eigentlich inzwischen auch vernachlässigbar.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
ich habe hier doch den universellen überladenen = operator benutzt.
was ich eigentlich sagen wollte:
"Mac ist der Computer, Mac OS das dort verwendete OS, bis es von Mac OS X ersetzt wurde, welches auf BSD basiert welches mehr oder weniger POSIX-kompatibel sein sollte."
was ich eigentlich sagen wollte:
"Mac ist der Computer, Mac OS das dort verwendete OS, bis es von Mac OS X ersetzt wurde, welches auf BSD basiert welches mehr oder weniger POSIX-kompatibel sein sollte."
- nkoehring
- User
- Beiträge: 543
- Registriert: Mittwoch 7. Februar 2007, 17:37
- Wohnort: naehe Halle/Saale
- Kontaktdaten:
MacOSX ist absolut POSIX-kompatibel. Der BSD-Kern unter MacOSX hat nur in Sachen Treibern nennenswerte Veraenderungen erlebt. Ansonsten laeuft also auf dem Mac so gut wie alles, was auch auf dem entsprechenden BSD laeuft oder ist zumindest leicht portierbar, wenn es um wirklich systemnahe Sachen geht. Bei solchen Escape-Sequenzen zB waere ich mir nicht so sicher, da die ja nicht Shell- sondern Terminalabhaengig sind. Aber nur weil ein XTerm auf jedem Mac existiert und laeuft, heißt das ja nicht, dass es der Standard dort ist. In dem Sinne ist ein ``system(clear)`` wohl doch um einiges sicherer
[url=http://www.python-forum.de/post-86552.html]~ Wahnsinn ist auch nur eine andere Form der Intelligenz ~[/url]
hackerkey://v4sw6CYUShw5pr7Uck3ma3/4u7LNw2/3TXGm5l6+GSOarch/i2e6+t2b9GOen7g5RAPa2XsMr2
hackerkey://v4sw6CYUShw5pr7Uck3ma3/4u7LNw2/3TXGm5l6+GSOarch/i2e6+t2b9GOen7g5RAPa2XsMr2
*hustet* wenn ein "clear screen" so wichtig für eine Anwendung ist, die auf mehrere (eventuell gar allen) Betriebsysstemen laufen soll ... dann sollte man bedenken, dass dies ebenso ein irrealer Wunsch von der Programmiersprache ist, wie dass Python 100%ig auf jede Frage eine Antwort hätte .
Irgendwann kommt man immer an einen Punkt, wo man einsehen muss (oder besser gesagt: sollte), dass man mit den gegebenen Möglichkeiten oder Anforderungen nicht weiter kommt und Abstriche machen oder gar andere Richtungen einschlagen muss.
Z.B. wenn ein Clear Screen ein "muss" ist und es auf Plattformen laufen soll, für die man nicht immer einen entsprechenden CommandoShell-Befehl vorrausetzen kann ... dann sollte man evntuell überlegen, ob die Lösung nicht eventuell in einer GUI-Form besser geeignet wäre, als die zuerst eingeschlagene CommandoShellScript-Version.
Irgendwann kommt man immer an einen Punkt, wo man einsehen muss (oder besser gesagt: sollte), dass man mit den gegebenen Möglichkeiten oder Anforderungen nicht weiter kommt und Abstriche machen oder gar andere Richtungen einschlagen muss.
Z.B. wenn ein Clear Screen ein "muss" ist und es auf Plattformen laufen soll, für die man nicht immer einen entsprechenden CommandoShell-Befehl vorrausetzen kann ... dann sollte man evntuell überlegen, ob die Lösung nicht eventuell in einer GUI-Form besser geeignet wäre, als die zuerst eingeschlagene CommandoShellScript-Version.