moths_between in PYthon
Gibtes eine Funktion in Python wie MONTHS_BETWEEN in Oracle-PL/SQL? Es liefert zurück Anzahl der Monaten zwischen zwei Zeitstempel. Danke für jede Hilfe! Ich habe es gegoogelt, aber nix gefunden. josef cihal _______________________________________________ Python-de maillist - Python-de@starship.python.net http://starship.python.net/mailman/listinfo/python-de
Josef Cihal wrote:
Gibtes eine Funktion in Python wie MONTHS_BETWEEN in Oracle-PL/SQL?
Es liefert zurück Anzahl der Monaten zwischen zwei Zeitstempel.
Danke für jede Hilfe!
Nicht direkt, aber mit dem Standardmodul 'time' ist das leicht zu machen. Siehe insbesondere time.time(), time.strftime(), time.strptime(). Idee: Differenz in Sekunden ausrechnen, dann dividieren bis Monate rauskommen. - TE _______________________________________________ Python-de maillist - Python-de@starship.python.net http://starship.python.net/mailman/listinfo/python-de
--On Donnerstag, 6. März 2003 13:04 +0100 Thilo Ernst
Nicht direkt, aber mit dem Standardmodul 'time' ist das leicht zu machen. Siehe insbesondere time.time(), time.strftime(), time.strptime().
Idee: Differenz in Sekunden ausrechnen, dann dividieren bis Monate rauskommen.
Dividierst Du durch 28, 29, 30 oder 31 Tage? :-) Keine sehr gute Loesung. -aj _______________________________________________ Python-de maillist - Python-de@starship.python.net http://starship.python.net/mailman/listinfo/python-de
Andreas Jung wrote:
--On Donnerstag, 6. März 2003 13:04 +0100 Thilo Ernst
wrote: Nicht direkt, aber mit dem Standardmodul 'time' ist das leicht zu machen. Siehe insbesondere time.time(), time.strftime(), time.strptime().
Idee: Differenz in Sekunden ausrechnen, dann dividieren bis Monate rauskommen.
Dividierst Du durch 28, 29, 30 oder 31 Tage? :-) Keine sehr gute Loesung.
Oops. Jawollja. Zu schnell in die Tasten gegriffen. Ich schliesse mich Jürgen Hermanns Lösung an. - TE _______________________________________________ Python-de maillist - Python-de@starship.python.net http://starship.python.net/mailman/listinfo/python-de
On Thu, 06 Mar 2003 13:04:19 +0100, Thilo Ernst wrote:
Idee: Differenz in Sekunden ausrechnen, dann dividieren bis Monate rauskommen.
w.c. (wohl caum ;) Richtig und ohne Fremdmodule geht's so: localtime/gmtime für beide Zeiten aufrufen, und dann 12*(y2-y1) + m2-m1 Ciao, Jürgen _______________________________________________ Python-de maillist - Python-de@starship.python.net http://starship.python.net/mailman/listinfo/python-de
Thilo Ernst wrote:
Josef Cihal wrote:
Gibtes eine Funktion in Python wie MONTHS_BETWEEN in Oracle-PL/SQL?
Es liefert zurück Anzahl der Monaten zwischen zwei Zeitstempel.
...
Idee: Differenz in Sekunden ausrechnen, dann dividieren bis Monate rauskommen.
Abgesehen davon, daß es so nicht geht (wurde ja schon diskutiert), möchte ich aber noch eine interessante Kleinigkeit loswerden: Die Monate befinden sich auf einer Geraden, die mit dem 1. März beginnt und eine Steigung von 30.6 hat. Mit entsprechender Abrundung kommt man in der Tat auf die richtigen Monate, mit dem 30-31-Spielchen. Natürlich ist das keine komplette Lösung, ich wollte nur drauf hinweisen: Die Monatseinteilung kommt nicht von ungefähr, man hat das offenbar mit so einer Geraden konstruiert.
def monat(tag, schalt=False): ... j = 365 + int(schalt<>False) ... t = (tag - 60) % j ... m = (2 + int(t / 30.6)) % 12 + 1 ... return m ... map(monat, (-1, 0, 31, 31+30, 31+29, 31+28, 31+28+31+30+31)) [12, 12, 1, 3, 3, 2, 5]
ciao - chris -- Christian Tismer :^) mailto:tismer@tismer.com Mission Impossible 5oftware : Have a break! Take a ride on Python's Johannes-Niemeyer-Weg 9a : *Starship* http://starship.python.net/ 14109 Berlin : PGP key -> http://wwwkeys.pgp.net/ work +49 30 89 09 53 34 home +49 30 802 86 56 pager +49 173 24 18 776 PGP 0x57F3BF04 9064 F4E1 D754 C2FF 1619 305B C09C 5A3B 57F3 BF04 whom do you want to sponsor today? http://www.stackless.com/ _______________________________________________ Python-de maillist - Python-de@starship.python.net http://starship.python.net/mailman/listinfo/python-de
Christian Tismer wrote:
Die Monate befinden sich auf einer Geraden, die mit dem 1. März beginnt und eine Steigung von 30.6 hat. Mit entsprechender Abrundung kommt man in der Tat auf die richtigen Monate, mit dem 30-31-Spielchen.
Natürlich ist das keine komplette Lösung, ich wollte nur drauf hinweisen: Die Monatseinteilung kommt nicht von ungefähr, man hat das offenbar mit so einer Geraden konstruiert. Fast :)
Früher fing das Jahr am 1.3 an, Frühlingsanfang = Das Leben kehrt zurück. Übrigens ein schönes neues Jahr :) Deshalb Dezember von decere (10). Julius Caesar hatte für sich einen Monat umbenannt (Juli) und dieser hatte 31 Tage. Augustus wollte auch einen Monat, daher gibt es heute den August, aber da dieser nicht nur 30 Tage haben wollte, wurde flugs der letzte Tag vom Jahr (Februar) and den August gehängt, damit dieser dem Julius nicht nachsteht :) Aber die astronomischen/mathematischen Berechnungen auf denen unser Kalender funktioniert sind auf jedenfall faszinierend. Liebe Grüße Daniel _______________________________________________ Python-de maillist - Python-de@starship.python.net http://starship.python.net/mailman/listinfo/python-de
Nicht direkt. Python unterstuetzt Datumsarithmetik nur in einer sehr
schwachen Weise (vom datetime Modul in Python 2.3) mal abgesehen.
Schau Dir mal mxDateTime (egenix.com) an. Das hat umfangreiche Funktionen
fuer diesen Zweck.
-aj
--On Donnerstag, 6. März 2003 09:35 +0100 Josef Cihal
Gibtes eine Funktion in Python wie MONTHS_BETWEEN in Oracle-PL/SQL?
Es liefert zurück Anzahl der Monaten zwischen zwei Zeitstempel.
Danke für jede Hilfe!
Ich habe es gegoogelt, aber nix gefunden. josef cihal
_______________________________________________ Python-de maillist - Python-de@starship.python.net http://starship.python.net/mailman/listinfo/python-de
-- --------------------------------------------------------------------- - Andreas Jung http://www.andreas-jung.com - - EMail: andreas at andreas-jung.com - - "Life is too short to (re)write parsers" - --------------------------------------------------------------------- _______________________________________________ Python-de maillist - Python-de@starship.python.net http://starship.python.net/mailman/listinfo/python-de
participants (7)
-
Andreas Jung
-
Andreas Jung
-
Christian Tismer
-
daniel.poelzleithner
-
Josef Cihal
-
Juergen Hermann
-
Thilo Ernst