Eine MySQL-Datenbanktabelle hat eine Spalte mit dem Datentyp time (http://dev.mysql.com/doc/refman/5.0/en/time.html). Wenn auf die Tabellendaten zugegriffen wird, gibt Python den Wert dieser Spalte als datetime.timedelta-Objekt zurück. Wie extrahiere ich die Zeit dafür? (Ich habe nicht wirklich verstanden, was Timedelta für die Python-Handbücher bedeutet).Python: Wie bekomme ich Zeit von einem datetime.timedelta Objekt?
z. Die Spalte in der Tabelle enthält den Wert „18.00.00“ Python-MySQLdb gibt diese als datetime.timedelta (0, 64800)
Bitte ignorieren, was unten ist (es tut anderen Wert zurück) -
Hinzugefügt: Unabhängig vom Zeitwert in der Tabelle scheint python-MySQLdb nur datetime.timedelta (0, 64800) zurückzugeben.
Hinweis: Ich verwende Python 2.4
Ich sollte erwähnen, dass mein erster Versuch war, "datetime.time.min + value" zu verwenden, aber dies funktioniert nicht, da 'datetime.time' Objekte nicht zu' datetime.timedelta' Objekten hinzugefügt werden können. –
Python gibt nur datetime.timedelta (0, 64800) zurück, unabhängig vom tatsächlichen Zeitwert. – Sam
Ja, ich hatte genug von den verschiedenen Möglichkeiten, wie Daten und Zeiten über verschiedene DB-API-Ebenen, verschiedene Versionen von MySQLdb und Python und sogar über verschiedene verfügbare Bibliotheken (z. B. mxDateTime) signalisiert werden. Jetzt verwende ich nur Integer und Unix-Zeit. Wenn Sie keine Abfragen basierend auf dem Wochentag oder etwas benötigen, ist dies im Allgemeinen viel einfacher. – bobince