ich kenn mich ja selber nicht aus,aber interressant wäre sicher wenn du die gui und die nicht gui sachen in threads realisierst. Am 03.07.08 schrieb Mathias Uebel <mathias.uebel@meeloon.de>:
Stefan Schwarzer schrieb: Hallo Stefan,
da sich sonst keiner erbarmt ;-) Herzlichen Dank für Dein Erbarmen. Im Ernst, ich bin dankbar, wenn ich partizipieren darf. Mittlerweise habe ich schon eine weitere Version hier abgelegt: http://www.meeloon.de/index-0-3-29.html UserGroup: Ich bin aufs Land gezogen. ;-(
[...]
from math import *
Das kommt eh raus, da ich die Kreisberechnung nicht mehr brauche. Aber der Hinweis im Allgemeinen ist richtig und werde ich beherzigen.
[...]
except: print """Folgenden Module sind unbedingt erforderlich: ... """ sys.exit(1)
Das Abfangen von Exceptions allein mit except solltest du tunlichst vermeiden. [...]
Ja stimmt. Ich gebe zu, das sollte im Nachhinein passieren. Habe ich aber versäumt. [...]
lcmp = lambda idx: lambda b, a: (a[idx] < b[idx]) and -1 or (a[idx] > b[idx]) and 1 or 0
Sieht meiner Ansicht nach schon "obfuscated" aus. ;-) Ich würde eine längere aber lesbarere Funktion bevorzugen. Stimmt auch. Eine _ordentliche_ Funktion ist lesbarer.
def HumanValue(value): """human-readable Values"""
Hauptwörter schreibt man im Englischen klein. Ein paar Ausnahmen sind Eigennamen, Himmelsrichungen und Jahreszeiten (unter bestimmten Bedingungen). Ohne Worte ...
if value > 1024 * 1024 * 1024: return "%d GB" % (value / 1024 / 1024 / 1024) if value > 1024 * 1024: return "%d MB" % (value / 1024 / 1024) if value > 1024: return "%d KB" % (value / 1024) return "%d B" % value
Hier gefällt mir gut, dass du die Vielfachen von 1024 deutlich als solche hinschreibst statt Werte wie 1048576 zu verwenden. Danke.
class PathWalk(object): """walk the path recursiv and add the filesize""" def __init__(self, POINT=os.environ['HOME']): #getcwd()): self.POINT = POINT
Warum die eigenwillige Schreibung mit Großbuchstaben für ein Attribut? Such mal nach PEP 8, dem Python Style Guide. Das schaue ich mir an! Versprochen.
self.oldPOINT = "" self.Action()
def Action(self): """walk the File tree""" # only if is a new access [...]
Ich gebe zu, dass ich mir das jetzt nicht im Detail angeschaut habe, aber ich würde erwarten, dass du hier mehr mit os.walk machen könntest. Denk daran, dass du die durch den Iterator zurückgegebenen Listen "in-place" verändern kannst (siehe Python-Dokumentation). Habe ich gemacht. Denke ich jedenfalls.
def FileListFiles(self): self.FILELIST_files.sort(cmp=lcmp(0))
Verwende am besten das Schlüsselwort-Argument key statt cmp. Schau ich mir in der Doku an. [...]
Den Namen FileSumme finde ich nicht sehr intuitiv. Außerdem würde man in Python-Code eher file_summe schreiben. Hm, wenn du versuchst, alles auf Englisch zu schreiben, warum nicht "sum" statt "summe"? Ja, ich muss mir in Sachen Bezeichnungen besser vorher einen Plan machen.
def Paint(self): """Action"""
Kein sehr aussagekräftiger Docstring. ;-) Richtig, kommt noch. Warum rechnest du hier mit zwei verschiedenen Winkelmaßen? 360 Grad und 2*Pi sind doch äquivalent. Wie oben geschrieben: Es sind Altlasten. Ich wollte den Kreis rundrum beschriften.
c += 1 # if end of color list: beginn the list if c == 24: c = 0;
Das Semikolon brauchst du nicht.
Danke nochmal. Bis die Tage.
Mathias
_______________________________________________ python-de maillist - python-de@python.net http://python.net/mailman/listinfo/python-de