Python-Datumsbereichsgenerator über Geschäftstage

8

Ich versuche, eine generator-Funktion zu erstellen, um über Geschäftstage (Wochentage) zu iterieren, Wochenenden zu überspringen (und Feiertage wären auch nett!). Bisher habe ich nur eine Funktion, die einfach über Tage iteriert:

%Vor%

Ich habe Mühe, einen sauberen, effizienten und phytonischen Weg zu finden, den Generator über Wochenenden und Ferien hinweg zu überspringen. Vielen Dank im Voraus!

    
jh314 18.07.2012, 21:03
quelle

4 Antworten

23

Ich würde empfehlen, die dateutil Bibliothek für solche Aufgaben zu verwenden. Ein einfacher ( nicht ignorierender Feiertag) Iterator über Geschäftstage ist dann einfach:

%Vor%     
earl 18.07.2012, 21:11
quelle
7

Es gibt eine nützliche Bibliothek namens dateutil , die diese Art von Dingen für Sie erledigen kann. Es kann Bereiche von Datumsangaben (oder Datumsangaben basierend auf benutzerdefinierten Regeln) generieren, ausgenommen bestimmte Tage, eine Woche, die an einem Tag beginnt, usw. Außerdem hat es ein etwas flexibleres Zeitlimit als die eingebaute Datetime-Bibliothek.

Dokumente in Ссылка - und verfügbar auf PyPi

    
Jon Clements 18.07.2012 21:09
quelle
6

Wenn startDate und endDate Datums- oder Datumsobjekte sind, können Sie % verwenden. co_de% method , um den Wochentag zu erhalten, dann überspringen Sie ihn, wenn es Samstag oder Sonntag ist. Tun Sie einfach:

%Vor%

Für Ferien müssen Sie manuell nach jedem gewünschten Urlaub überprüfen. Einige Feiertage sind auf komplexe Weise definiert, so dass dies ein wenig schwierig sein könnte.

    
BrenBarn 18.07.2012 21:09
quelle
0
%Vor%     
Peter Bob Ukonu 18.10.2015 21:05
quelle

Tags und Links