Seite 1 von 1
Lottoverwaltung
Verfasst: Montag 20. Februar 2012, 10:59
von Malta
Ich hab versucht eine Lottoverwaltung zu programmieren. Aber ich komme in letzter Zeit nicht mehr dazu um weiterzumachen.
Damit es nicht umsonst war möchte ich den Code veröffentlichen, vielleicht kann einer Teile aus dem Code gebrauchen oder gar am Projekt weitermachen oder sich einfach nur inspirieren lassen.
Jetzt auf Github
https://github.com/MarkusHackspacher/pyLottoverwaltung

Re: Lottoverwaltung
Verfasst: Montag 20. Februar 2012, 11:42
von Kebap
Info: Benötigt PyQt4
Re: Lottoverwaltung
Verfasst: Montag 20. Februar 2012, 15:35
von Hyperion
@Malta: Vielleicht wäre es sinnvoller, das ganze auf einer Plattform a la bitbucket oder github anzubieten. Sollte es sich nur um zwei, drei Dateien handeln, würde auch ein Pastebin a la paste.pocoo.org gehen. Aber das wäre alles besser als den Code bei solch einem Filehoster zu hinterlegen, bei dem die Dateien vermutlich auch nur über einen kurzen Zeitraum erreichbar sind.
Re: Lottoverwaltung
Verfasst: Dienstag 21. Februar 2012, 02:00
von Leonidas
80 Sekunden warten bis die Datei runtergeladen ist? Sicher nicht, Tab geschlossen.

So gehts wohl den meisten hier.
Re: Lottoverwaltung
Verfasst: Dienstag 21. Februar 2012, 09:01
von BlackJack
An der Stelle verweise ich mal wieder auf das Dropbox-Referrer-Thema:
http://www.python-forum.de/viewtopic.php?f=5&t=23918
Wobei für Projekte Bitbucket oder Github eher besser geeignet sind als ein „statischer” Download.
Re: Lottoverwaltung
Verfasst: Dienstag 21. Februar 2012, 16:55
von Malta
Erstmal Danke für euer Interresse, ich hatte schon mit Reaktion "Nicht schon wieder eine Lottoverwaltung" oder so gerechnet.
Ich werde das Projekt in den nächsten Tagen bei Github veröffentlichen.
Jetzt auf Github
https://github.com/MarkusHackspacher/pyLottoverwaltung
Re: Lottoverwaltung
Verfasst: Dienstag 21. Februar 2012, 23:38
von derdon
lotto/zufallszahl.py: Die Funktion zufallszahlen lässt sich mittels random.sample deutlich kompakter definieren:
Code: Alles auswählen
In [1]: import random
In [2]: def zufallszahlen(anzahl, maxwert):
...: return random.sample(xrange(1, maxwert + 1), anzahl)
...:
In [3]: zufallszahlen(3, 3)
Out[3]: [3, 1, 2]
In [4]: zufallszahlen(3, 5)
Out[4]: [1, 2, 4]
In [5]: zufallszahlen(5, 3)
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
/Users/simon/<ipython-input-5-14174081cd87> in <module>()
----> 1 zufallszahlen(5, 3)
/Users/simon/<ipython-input-2-696d0d32e493> in zufallszahlen(anzahl, maxwert)
1 def zufallszahlen(anzahl, maxwert):
----> 2 return random.sample(xrange(1, maxwert + 1), anzahl)
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/random.pyc in sample(self, population, k)
318 n = len(population)
319 if not 0 <= k <= n:
--> 320 raise ValueError("sample larger than population")
321 random = self.random
322 _int = int
ValueError: sample larger than population
In [6]:
Zu lotto_gui_dialog.py sage ich einfach mal nichts …, das willst du bestimmt auch nicht so stehen lassen. Bei lotto_gui_dateneing.py musst du dringend DRY (don't repeat yourself) befolgen. Zum Beispiel die Zeilen 65 - 113, 184 - 367 und 533 - 728 gehen gar nicht!
Re: Lottoverwaltung
Verfasst: Mittwoch 22. Februar 2012, 19:38
von Malta
Die zufallszahl.py habe ich nach deinem Vorschlag überarbeitet. Die lotto_gui_dialog.py aus Github entfernt, wurde auch nicht im Programm aufgerufen.
Zum Rest, vielleicht habe ich mich in die eine oder andere Richtung verrannt. Aber leider habe ich jetzt nicht die Zeit dazu das Programm fertig zu schreiben oder zu bereinigen.
Re: Lottoverwaltung
Verfasst: Samstag 21. April 2012, 13:01
von Malta
Habe in der Datei lotto_gui_dateneing.py den Spagetticode ein bisschen aufräumen können
und möchte jetzt die Zeilen 93 bis 142 verkürzen.
https://github.com/MarkusHackspacher/py ... py#L93-142
Hab self.onEingabefeld(1)) ausprobiert, aber ich bekomme den Fehler:
Code: Alles auswählen
self.connect(self.Btn_Numerary_1to49[0],QtCore.SIGNAL("clicked()"),self.onEingabefeld(1))
TypeError: arguments did not match any overloaded call:
QObject.connect(QObject, SIGNAL(), QObject, SLOT(), Qt.ConnectionType=Qt.AutoConnection): argument 3 has unexpected type 'NoneType'
QObject.connect(QObject, SIGNAL(), callable, Qt.ConnectionType=Qt.AutoConnection): argument 3 has unexpected type 'NoneType'
QObject.connect(QObject, SIGNAL(), SLOT(), Qt.ConnectionType=Qt.AutoConnection): argument 3 has unexpected type 'NoneType'
Edit: Problem behoben
Re: Lottoverwaltung
Verfasst: Samstag 21. April 2012, 13:09
von lunar
@Malta: Das sollte Dich nicht wundern, denn "self.onEingabefeld(1)" ruft die Funktion auf, anstatt sie als Slot zu übergeben. Du suchst "functools.partial()".