Tips

Datum und Zeit

Systemzeitdatetime.datetime.now()
Dateidatumdatetime.datetime.fromtimestamp(os.path.getmtime(filename))
Text → Zeitdatetime.datetime.strptime(text,format)
Zeit → Textdatetime.datetime.strftime(format)

strftime - Formatierung

Als Beispielsdatum wurde der Sonntag 2. Januar 2011 um 23:25:27 verwendet. datetime.datetime.fromtimestamp(time.mktime(time.strptime('20110102 23:25:27','%Y%m%d %H:%M:%S'))).strftime(…)

Jahr Monat Tag
%Y2011Zahl %BJanuaryText1 %d02im Monat [01-31]
%y11Zahl kurz %b %hJanText kurz1 %e⋅2im Monat [⋅1-31]2
%C20Jahrhundert %m01Zahl [01-12] %j002im Jahr [001-366]
Wochentag Woche3 Jahr der Woche4
%ASonntagText1 %U01[00-53] 1. So → 1 %G2010Zahl lang
%aSoText kurz %W00[00-53] 1. Mo → 1 %g10Zahl kurz
%w0Zahl [0-6,So-Sa] %V52[01-53] ≥4 Tage → 1
%u7Zahl [1-7,Mo-So]
Stunde Minute Sekunde
%H23Stunde [01-24] %M25Minute [00-59] %S27Sekunde [00-61]5
%I11Stunde [01-12] %s1294007127seit 1.1.1970 00:00:00 GMT
%k23Stunde [⋅1-24]2
Zeitzone6 Tageshälfte7 Spezialzeichen
%ZCESTText %PpmText klein [am,pm] %n\nZeilenumbruch
%z+0200±Zahl (Δh) %pPMText gross [AM,PM] %t\tTabulator
%%%Prozentzeichen
Datum Zeit gemäss lokalen Einstellungen1
%F2011-01-02%Y-%m-%d %T23:25:27%H:%M:%S %cSo 02 Jan 2011 23:25:27
%D01/02/11%m/%d/%y %R23:25%H:%M %X23:25:27
%r11:25:27 PM%I:%M:%S %p %x02.01.2011
  1. Textausgaben sowie %c, %x und %X hängen von den Sprach- und Ländereinstellungen ab (de_DE.UTF-8; siehe Modul locale). Nicht vergessen Python startet mit C-Einstellungen, die des Benutzers müssen beim Programmstart mit locale.setlocale(locale.LC_ALL, '') initiert werden. Die Einstellungen für %c, %X und %X können via locale.nl_langinfo(locale.D_T_FMT) (respektive .D_FMT und .T_FMT) ermittelt werden.
  2. %k und %e verwenden ein führendes Leerzeichen (hier als ⋅ dargestelt) anstelle einer führenden Null.
  3. %U, %V und %W unterscheiden sich darin, wie die erste Woche (Zahl 1) definiert ist. Allfällige Tage davor gehören zur Woche 0 (%U und %W) oder zur letzten des Vorjahres (%V).
  4. %g und %G unterscheiden sich von %y und %Y nur in den ersten Tagen des Jahres, die noch vor der ersten Woche liegen (siehe %V). In dem Fall beziehen sich %g und %G auf das Jahr in dem sich der entsprechende Wochenanfang befindet.
  5. Zum Ausgleich zwischen UTC und Universellen Sonnenzeit wird sporadisch eine (sehr selten zwei) Schaltsekunde eingeführt. Die entsprechende Minute hat demzufolge 61 Sekunden. Achtung: %s ignoriert dies!
  6. Die Umsetzung der Zeitzonen ist in datetime nicht perfekt. Insbesonder beim Einlesen (strptime) wird sie ignoriert.
  7. %p und %P sind bezüglich Gross-Kleinschreibung genau übers Kreuz definiert.
  8. ohne Verwendung sind [ %E %i %J %K %L %N %o %O %q %Q %v ]