1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team-Mitglieder
    4. Trophäen
    5. Mitgliedersuche
  4. Tutorial Bereich
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Lexikon
  • Erweiterte Suche
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

[Python] BUG?: Datum/Timestamp vom 27.03.2008

    • Frage
  • bimbo
  • 27. März 2008 um 12:50
  • Unerledigt
  • bimbo
    15
    bimbo
    Mitglied
    Reaktionen
    15
    Punkte
    2.320
    Beiträge
    390
    • 27. März 2008 um 12:50
    • #1

    Ich arbeite grad an einer Kalender Applikation, geschrieben in python:

    aber komischer weise dauert der 27.03.2011 nur 23 Stunden?!

    Code
    import time
    def main():
    	date_array = [['2011-03-26','2011-03-27'],['2011-03-27','2011-03-28'],['2011-03-28', '2011-03-29'],['2011-03-20', '2011-03-30']]
    	for start_end in date_array:
    		start = start_end[0]
    		end = start_end[1]
    		dur = int((_mktime(end) - _mktime(start))/3600)
    		print "Von %s bis %s sind es %s Stunden"% (start,end,dur)
    def _mktime(time_string):
    	ts = -1
    	ts = time.strptime(time_string,"%Y-%m-%d")
    	return time.mktime(ts)
    
    
    if __name__ == "__main__":
    	main()
    Alles anzeigen


    ergibt:

    Code
    fd@flocki:~/Desktop$ python checkdate.py 
    Von 2011-03-26 bis 2011-03-27 sind es 24 Stunden
    Von 2011-03-27 bis 2011-03-28 sind es 23 Stunden
    Von 2011-03-28 bis 2011-03-29 sind es 24 Stunden
    Von 2011-03-20 bis 2011-03-30 sind es 239 Stunden

    und das ganze in php:

    PHP
    <?php
    $date_array = array(array("2011-03-26","2011-03-27"),array("2011-03-27","2011-03-28"),array('2011-03-28', '2011-03-29'),array('2011-03-20', '2011-03-30'));
    foreach ($date_array as $start_end) {
    	$start = $start_end[0];
    	$end = $start_end[1];
    	$dur = (_mktime($end) - _mktime($start))/3600;
    	printf("Von %s bis %s sind es %s Stunden",$start,$end,$dur);
    	print "\n";
    }
    function _mktime($time_string) {
    	$ts = -1;
    	$ts = strptime($time_string,"%Y-%m-%d");
    	return mktime($ts['tm_hour'],$ts['tm_min'],$ts['tm_sec'],$ts['tm_mon'],$ts['tm_mday'],$ts['tm_year']+1900);
    }
    ?>
    Alles anzeigen


    ergibt:

    Code
    fd@flocki:~/Desktop$ php checkdate.php 
    Von 2011-03-26 bis 2011-03-27 sind es 24 Stunden
    Von 2011-03-27 bis 2011-03-28 sind es 24 Stunden
    Von 2011-03-28 bis 2011-03-29 sind es 24 Stunden
    Von 2011-03-20 bis 2011-03-30 sind es 240 Stunden

    hat von euch ev. jemand eine plausible Erklärung?

    LVA Erfahrungsberichte: http://vowi.fsinf.at/

  • Paulchen
    1
    Paulchen
    Gast
    • 27. März 2008 um 13:33
    • #2
    Zitat von bimbo

    aber komischer weise dauert der 27.03.2011 nur 23 Stunden?!

    Umstellung Winterzeit -> Sommerzeit.

  • bimbo
    15
    bimbo
    Mitglied
    Reaktionen
    15
    Punkte
    2.320
    Beiträge
    390
    • 27. März 2008 um 19:02
    • #3

    gotteswillen bin ich blöd! da könnte man auch selber draufkommen.

    danke paulchen

    LVA Erfahrungsberichte: http://vowi.fsinf.at/

  • Maximilian Rupp 27. Dezember 2024 um 12:04

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

Benutzerkonto erstellen Anmelden

Benutzer online in diesem Thema

  • 1 Besucher

Rechtliches

Impressum

Datenschutzerklärung