Seite 2 von 2
Verfasst: Montag 3. August 2009, 17:55
von BlackJack
Das ist ja auch kein Attribute auf dem *Modul* `datetime` sondern auf der Klasse `datetime` *in* dem Modul `datetime`.
Verfasst: Montag 3. August 2009, 17:57
von jbs
BlackJack hat geschrieben:Das ist ja auch kein Attribute auf dem *Modul* `datetime` sondern auf der Klasse `datetime` *in* dem Modul `datetime`.
--> datetime.datetime.strptime
und nimm ein kleines y
Verfasst: Montag 3. August 2009, 18:07
von ippurk
aaaaaaaaahhhh, roger
Verfasst: Montag 3. August 2009, 18:46
von ippurk
@jbs: Jo, hab ich schon verstanden, und ein kleines y führt zu einer zweistelligen Jahreszahl, was ich eigentlich vermeiden will.
Verfasst: Dienstag 4. August 2009, 01:40
von nuss
darf die klasse Home auch zugriff auf die eigenen instancen haben ?
wenn ja machs doch so ( oder ähnlich ):
Code: Alles auswählen
class Home(object):
homes = []
def __new__(cls, *args, **kwargs):
inst = object.__new__(cls)
cls.homes.append(inst)
return inst
Damit ist jede instance von Home unter Home.homes zu erreichen.
Verfasst: Dienstag 4. August 2009, 12:32
von jbs
ippurk hat geschrieben:@jbs: Jo, hab ich schon verstanden, und ein kleines y führt zu einer zweistelligen Jahreszahl, was ich eigentlich vermeiden will.
Code: Alles auswählen
date_1 = "23.4.09"
date_1 = datetime.strptime(date_str, '%d.%m.%Y')
Du hast da aber eine zweistellige Jahreszahl angegeben.
Verfasst: Donnerstag 6. August 2009, 10:57
von ippurk
nochmal zum Speichern meiner vom Nutzer angelegten Daten:
Dieses Programms hier soll ja schon auch sowas wie "Datensicherung" oder "Datenrücksicherung" anbieten.
Für Leute die nicht den ganzen Thread lesen wollen: Ich hab hier eine Miethausverwaltung, wo man Häuser und deren Wohnungen als Objekte erstellen kann, sowie einen Mieter, der dann irgendwo einziehen oder ausziehen kann. Eine der Hauptfunktionen ist eine Nebenkostenabrechnung für die einzelnen Häuser, die nur noch sowas ausspuckt wie: Mieter xy hat z zuwenig gezahlt.
Im Moment arbeite ich während der Laufzeit ja nur mit meinen Instanzen, die in homes{} und tenants{} abgelegt werden, wobei in homes{} auch noch Instanzen der Wohnungen liegen, da die ja von den homes abhängig sind.
Jetzt bin ich also gedanklich soweit, daß ich mit Pickle diese zwei Dicts speichern und auch laden kann. Nur kommt mir das ziemlich hölzern vor.
Da bietet sich doch wohl eher eine Datenbank an, oder ?
Nur, um das gedanklich jetzt mal ein bißchen klarzukriegen: Kann und sollte ich in dieser Datenbank meine Instanzen ablegen oder macht man das prinzipiell eher so, nur Informationen abzuspeichern, mit denen meine Instanzen dann beim erneuten Programmstart wieder erzeugt werden ? Hab ich also nach dem Laden der Daten auf einen Schlag sämtliche Instanzen mit allen Eigenschaften wieder zur Verfügung, oder muss ich die erst erstellen ? Wie gehe ich da am besten grundsätzlich mal ran ?
Lektüreempfehlungen immer gern gesehen,
Verfasst: Donnerstag 6. August 2009, 11:27
von cofi
Datenbanken sind fuer Daten immer eine gute Idee

Hat in dem Fall auch den Vorteil, dass man nicht an die Applikation (oder Python) gebunden ist, um die Daten eventuell auszuwerten.
Schau dir mal SQLAlchemy an, das kannst als ORM verwenden, um deine Instanzen zu sichern, aber du kannst auch auf ORM verzichten und den Datenansatz nutzen - besser als mit pure SQL.
Verfasst: Donnerstag 6. August 2009, 11:58
von ippurk
ok, klingt interessant.
Bei Sql-Sachen muss man aber doch immer diesen Sql-Server laufen haben ? Kann ich das nicht irgendwie komplett innerhalb meines Programms laufen lassen. Der Nutzer soll ja später sozusagen nur auf installieren drücken müssen. Sorry, bei der sqlAlchemy Seite bin ich da erst mal noch nicht so schlau geworden, zu viele neue Begriffe da.
Verfasst: Donnerstag 6. August 2009, 12:02
von Hyperion
Es gibt Server-lose DB-Systeme, wie z.B. SQLite. Dafür gibt's auch ein Modul in der Standard-Library.
Such mal im Baord, da gabs iirc von Gerold einige Beispiel-Scripte.
Verfasst: Donnerstag 6. August 2009, 12:04
von ippurk
jo, das hört sich gut an, dankedanke
Verfasst: Donnerstag 6. August 2009, 12:05
von Hyperion
Ach ja, als Management-Tool empfehle ich gerne den SQLiteManager. Das ist ein Firefox-Plugin und daher einfachst zu installieren. Ist teilweise ein wenig buggy, aber für das einfache Anlegen und manuelle Eintragen von Daten vollkommen ausreichend.
Verfasst: Donnerstag 6. August 2009, 12:05
von HWK
ippurk hat geschrieben:Bei Sql-Sachen muss man aber doch immer diesen Sql-Server laufen haben ?
Bei sqlite nicht.
MfG
HWK
Edit: Schon wieder zu spät.
Verfasst: Donnerstag 6. August 2009, 12:10
von Hyperion
HWK hat geschrieben:
Edit: Schon wieder zu spät.
SCNR
