Bitte keine Snippets mehr

Fragen zu Tkinter.
Antworten
3ff
User
Beiträge: 191
Registriert: Dienstag 22. Dezember 2009, 12:54
Wohnort: Odenwald Sued-Hessen

Hallo,
bin wieder zurück und Tkinter hat unserer Firma das "Leben" gerettet!
jemand hatte sich an PyQt4 gewagt und ist gescheitert, weil man etliche Monate/Jahre Erfahrung braucht.
Dann hat der Kunde mit 1 Programmiergerät "bedienen" müßen und ich hab alles auf Tkinter umgestellt.
Es ging nur um Buttons, Listboxen und ein kleines Menu.
jetzt will ich mich wieder intensiver hier um Tkinter kümmern.
Frage:
1. Wie werden Dateien hochgeladen?
Das bekomme ich nicht hin.
2. Anlass meiner Bitte, keine Snippets zu nutzen, ist der Beitrag von LinuxDonald vom 14. Juni.
Da schreibt er:
from tkinter import filedialog
das funktioniert nicht, das hat auch nichts mit dem problem Sortieren zu tun.
Richtig wäre :
from Tkinter import tkFileDialog.
Dann kann ich auf Unterprogramme dieser Bibliothek zurückgreifen.
tkFileDialog.askopenfilename(self. Option....)

Man sollte auch immer dabeischreiben, mit welcher Version von Tkinter und Tk man jeweils arbeitet.
Die Pythonversion läßt sich bequem über die in unix übliche #!/usr/bin/env/ Version-blablabla einstellen.
Sonst ist das alles nicht nachvollziehbar.
numerix hat zurecht darauf hingewiesen.
Für die GUI PyQt4 gilt das umso mehr, aber das ist 1 andere Baustelle.
Guude
Fritz
Benutzeravatar
Rebecca
User
Beiträge: 1662
Registriert: Freitag 3. Februar 2006, 12:28
Wohnort: DN, Heimat: HB
Kontaktdaten:

3ff hat geschrieben:1. Wie werden Dateien hochgeladen?
Gar nicht. Nutze ein pastebin, z.B. http://paste.pocoo.org.
2. Anlass meiner Bitte, keine Snippets zu nutzen, ist der Beitrag von LinuxDonald vom 14. Juni.
Nur weil Leute Fehler machen oder Dinge veralten koennen, willst du, dass keiner Snippets postet? Dann koennen wir dieses Forum und das halbe Internet einstampfen... Ich persoenlich finde Snippets mit kleinen Fehlern nuetzlicher als ueberhaupt gar nichts. Es bleibt dir natuerlich frei, die Snippets nicht anzuschauen. (Und was fuer Dateien willst du hochladen, wenn es keine Snippets sind?)
Da schreibt er:
from tkinter import filedialog
das funktioniert nicht
Ich kann's zwar gerade nicht nachpruefen, aber das sieht mir nach Python >= 3 aus, ist also nicht falsch.
das hat auch nichts mit dem problem Sortieren zu tun.
:?:
Richtig wäre :
from Tkinter import tkFileDialog.
Fuer Python 2.x.
Man sollte auch immer dabeischreiben, mit welcher Version von Tkinter und Tk man jeweils arbeitet.
Die Pythonversion läßt sich bequem über die in unix übliche #!/usr/bin/env/ Version-blablabla einstellen.
Jo, sowas ist hilfreich. Haettest du ja gleich mit gutem Beispiel vorangehen koennen. :wink:
Offizielles Python-Tutorial (Deutsche Version)

Urheberrecht, Datenschutz, Informationsfreiheit: Piratenpartei
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

3ff hat geschrieben:2. Anlass meiner Bitte, keine Snippets zu nutzen, ist der Beitrag von LinuxDonald vom 14. Juni.
Da schreibt er:
from tkinter import filedialog
das funktioniert nicht, das hat auch nichts mit dem problem Sortieren zu tun.
Richtig wäre :
from Tkinter import tkFileDialog.
Für Python 3 ist das auch richtig. Somit ist dieser Post keineswegs falsch sondern nutzt ne neuere Python-Version als du.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Dav1d
User
Beiträge: 1437
Registriert: Donnerstag 30. Juli 2009, 12:03
Kontaktdaten:

3ff hat geschrieben:bin wieder zurück und Tkinter hat unserer Firma das "Leben" gerettet!
jemand hatte sich an PyQt4 gewagt und ist gescheitert, weil man etliche Monate/Jahre Erfahrung braucht.
:?:
In der Zeit schreibst du dein eigenes GUI-Toolkit :twisted:
the more they change the more they stay the same
3ff
User
Beiträge: 191
Registriert: Dienstag 22. Dezember 2009, 12:54
Wohnort: Odenwald Sued-Hessen

@rebecca:
ja wie denn?
hochladen ist wichtig!
Guude
Fritz
BlackJack

@3ff: Hinter dem Fragezeichen verbirgt sich die Hilfe: http://paste.pocoo.org/help/

Wobei zumindest die Grundfunktion eigentlich auch ohne Hilfe herausgefunden werden kann. Ist ja nicht so, dass man allzuviele Möglichkeiten hat bei der Schnittstelle.
3ff
User
Beiträge: 191
Registriert: Dienstag 22. Dezember 2009, 12:54
Wohnort: Odenwald Sued-Hessen

@Rebecca
da bin ich absolut nicht Deiner Meinung.
Schau Dir mal die Antwort von numerix zu dem Beitrag von LinuxDonald und dem Sort-problem an
Der (numerix) hat den Punkt genau getroffen.
In einer solch komprimierten Form hab ich noch nie gesehen, wie man
1. einen Editor
2. Eine Sortfunktion
3. Buttons editiert.
Das Programm läuft und der Geschichte mit meinem python 2.5 oder der alten Version von Tkinter geh ich gleich nach.
Wenn, dann kann es nur an den (falschen) Pfaden liegen. ich benutze Ubuntu und hole (falls vorhanden) die Software direkt von den Spiegelservern. Wobei ich hin und wieder festgestellt habe, das nicht immer die aktuellste Software auf den Servern liegt. Das ist verzeihlich, denn es sind Unmengen an Softwarepakete vorhanden.
Übrigens benutze ich als Doku zu Tkinter die Doku von Shipman vom New Mexico Tech.
Das ist Doku, die diesen Namen verdient und nicht was riverbankcomputing zu pyqt4 abliefert.
das sind snippets und da entstehen die Probleme.
jetzt kommen wir allerdings wieder auf 1 andere Baustelle.
Guude
Fritz
8) 8)
Barabbas
User
Beiträge: 349
Registriert: Dienstag 4. März 2008, 14:47

Hallo 3ff: Das mit den veralteten Paketen auf den Spiegelservern ist gewissermaßen so gewollt: Es gibt nur Sicherheitsaktualisierungen für bestehende Ubuntu-Versionen (ausgenommen FF in der Zukunft ;)). Aktuelle Pakete werden also nur halbjährlich eingespielt. Oder meintest du noch was anderes?

Was die ganze Diskussion angeht: Ich verstehe gar nicht genau, was du vor Augen hast. Einerseits forderst du, dass genau angegeben wird, auf welcher Plattform / Version einzelne Snippets lauffähig sind. Andererseits lehnst du sie aber auch gänzlich ab ("keine Snippets mehr"). Einmal scheinst du eine Art allgemeingültiges, nachhaltiges Code-Archiv vor Augen zu haben und einmal... was ganz anderes?

Ich verstehe das nicht, weil das hier doch einfach erstmal ein Hilfe-Form ist. Jemand hat ein Problem und diskutiert mit den anderen Mitglieder darüber. Ggf. wird ihm ein Snippet bereitgestellt, das sein Problem löst. Falls es versionsspezifisch ist, gibt es nochmal eine Nachfrage oder eine entsprechende Beschwerde: "komisch, das geht hier nicht...."

Es ist nunmal so, dass Python und verschiedene Schnittstellen sich ändern. Das ist manchmal ärgerlich, gehört aber essentiell zur Auseinandersetzung mit dieser Sprache dazu. Wenn man feststellt, dass etwas, das bei jemand anderem früher mal funktionierte, jetzt eine Exception wirft, muss man kurz danach suchen und wird in 90% der Fälle sicher eine gute Erklärung finden.
Man kann es auch anders auf den Punkt bringen: Software, die du selbst nur für dich geschrieben hast, wird in einem halben Jahr womöglich auch nicht mehr (fehlerfrei) laufen, wenn du Ubuntu aktualisierst. Die aktive Auseinandersetzung mit den Veränderungen von Python ist also so oder so unumgänglich (so lange du aktuelle Versionen einsetzt).

Ich fände es übrigens ganz gut, wenn du die Beiträge, auf die du dich beziehst, kurz verlinken würdest. Ich finde es teilweise recht schwer zu verstehen, wovon du gerade sprichst - und dafür haben wir ja den Hypertext ;).

Einen schönen Gruß,

brb
3ff
User
Beiträge: 191
Registriert: Dienstag 22. Dezember 2009, 12:54
Wohnort: Odenwald Sued-Hessen

@BlackJack
mit der pastebin hab ich verstanden!
1.Wo landet denn mein Posting?
2. import sys
print sys.path bringt tatsächlich viele python2.5 Verweise
Wie das dahin gekommen ist?
normalerweise steht das in den Initialisierungsdateien der bash z.b. /etc/.profile aber die gibts hier nicht.
Wo änder ich denn die Verweise auf python3.0
in dieser sog. sheebang Zeile schreib ich (meist) #!/usr/bin/python3.0 und das hat er bisher immer gefressen!! :K :K
3ff
User
Beiträge: 191
Registriert: Dienstag 22. Dezember 2009, 12:54
Wohnort: Odenwald Sued-Hessen

@brb
mir geht es einfach darum, Code, der hier veröffentlicht wird, nachzuvollziehen.
Mit den Ubuntu-Versionen seh ich nicht so (schwarz)
Ich hab Ubuntu 8.5 und tu den Teufel, das zu aktualisieren. ich weiss das Ubuntu wohl 2 mal pro jahr upgedatet wird, aber das muß man nicht mitmachen.
Auch meine Backups sind alle mit Ver 8.5 gemacht.
Nicht auf 1 Streamer. ich bin zwar in rente, aber einigermassen up to date (1000 Megabyte HD)
du hast mich bestimmt falsch verstanden oder ich hab mich falsch ausgedrückt:
ich hab nichts gegen Snippets aber die sollen auch als solche gekennzeichnet sein.
Das/Mein bestes Beispiel ist von numerix zum sort. ich hab das runtergezogen, es lief und dann erst hab ich mir den Code angeschaut. in 1 zeile ruft er den Editor auf, baut eine Liste auf, sortiert die liste und bildet wieder 1 Sting fertig.
Guude
Fritz 8) 8)
Sowas versteht/verstehe ich nur, wenn
BlackJack

@3ff: Ad 1: Welches Posting?

Ad 2: Worauf bezieht sich dass denn jetzt?

Wenn Du ``print sys.path`` schreibst, wäre es verwunderlich wenn in der Ausgabe Pfade von Python 3.x auftauchen würden, denn dort wäre das ein Syntaxfehler weil ``print`` dort keine Anweisung mehr ist.

Ubuntu 8.05 ist ziemlich alt und wird nicht mehr aktualisiert. Du verwendest also ein System für das es keine Sicherheitsupdates mehr gibt. Man muss ja nicht jedes Update mitmachen, aber zu alt werden lassen, sollte man ein System auch nicht.

Was meinst Du mit Snippets als solche kennzeichnen? Wenn etwas kurz und kein vollständiges Programm ist, dann sollte man das auch so erkennen. Was willst Du da kennzeichnen!?
EyDu
User
Beiträge: 4881
Registriert: Donnerstag 20. Juli 2006, 23:06
Wohnort: Berlin

BlackJack hat geschrieben:Was meinst Du mit Snippets als solche kennzeichnen? Wenn etwas kurz und kein vollständiges Programm ist, dann sollte man das auch so erkennen. Was willst Du da kennzeichnen!?
Wie sollte man ohne Kennzeichnung denn sonst wissen, dass der Code nicht einfach kopiert werden kann, sondern dass noch etwas nachgedacht werden muss?
Das Leben ist wie ein Tennisball.
BlackJack

@EyDu: Hm, wie wär's einfach mit immer Nachdenken und nicht nur wenn's als Snippet gekennzeichnet ist!? :roll:
EyDu
User
Beiträge: 4881
Registriert: Donnerstag 20. Juli 2006, 23:06
Wohnort: Berlin

Das hört sich für mich viel zu anstregend an. Wer Code produziert hat den Lesern gegenüber auch eine gewisse Verantwortung :lol:
Das Leben ist wie ein Tennisball.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Ab Juli müssen hier eh Snippets mit einem Haltbarkeitsdatum versehen werden 8)
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Antworten