Frage

In Python, was ist der beste Weg, das bekommen RFC 3339 YYYY-MM-DD Text aus der Ausgabe von gtk.Calendar::get_date()?

War es hilfreich?

Lösung

Dank Mark und treeface für die Lösungen, aber es scheint, ich habe einen besseren erfunden ein:

year, month, day = cal.get_date()
return '{0:04d}-{1:02d}-{2:02d}'.format(year, month+1, day)

Diese Lösung ist kürzer, leichter (meiner Meinung nach) zu verstehen, und ich glaube, dauert weniger Verarbeitung, da sie die Bühne schneiden, wo das Tupel in UNIX Zeit umgewandelt wird.

Andere Tipps

Nach dem docs , die get_date kehrt ein Tupel von (Jahr, Monat, Tag), in dem Monat 0-11 und Tag 1 bis 31, so:

import datetime
dtTuple = calControl.get_date()
dtObj = datetime.datetime(dtTuple[0], dtTuple[1] + 1, dtTuple[2]) #add one to month to make it 1 to 12
print dtObj.strftime("%Y-%m-%d")

Dies könnte nützlich für Sie:

http://www.tutorialspoint.com/python/time_strftime.htm

Ich habe auch nur für diese gtk get_date Methode sah sich um und ich konnte einige Code, Griffe es wie folgt finden:

//here replace "self.window.get_date()" with "gtk.Calendar::get_date()"
year, month, day = self.window.get_date()
mytime = time.mktime((year, month+1, day, 0, 0, 0, 0, 0, 0))
return time.strftime("%x", time.gmtime(mytime))

So einfach ersetzen "% x" mit "% G% m-% d" und ich denke, dass es funktionieren würde. Oder zumindest ist es einen Versuch wert.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top