Wie kann ich den 3. Freitag eines Monats in Python bekommen?

8

Ich versuche, Bestandsdaten von Yahoo! Finanzen mit Python 2.7.9, aber ich brauche nur Daten für den 3. Freitag des Monats. Ich habe eine Funktion, um die Daten zu bekommen, aber brauche einen Weg, um die Daten zu bekommen. Ich möchte so etwas:

%Vor%

Damit ruft get_third_fris(6) eine 6-Punkte lange Liste von 3 Freitagen nach dem aktuellen Datum auf. Die Daten müssen Unix-Zeitstempel sein.

(Ich habe so ziemlich keine Erfahrung mit time oder datetime , also bitte erläutern Sie, was Ihr Code macht.)

Danke!

    
spelchekr 23.02.2015, 18:36
quelle

6 Antworten

20

Sie können das calendar -Modul verwenden, um Wochen aufzulisten, und dann den Freitag dieser Woche nutzen .

%Vor%

Sie können zu Unix-Zeitstempeln formatieren, aber das ist nicht trivial. Ich werde Sie auf diese ausgezeichnete Antwort verweisen, die Informationen darüber enthält, ob Ihr Datum zeitzonenabhängig ist oder nicht. p>     

Adam Smith 23.02.2015 18:48
quelle
6

Sie können Standard-Python-Funktionen verwenden, um den dritten Freitag dieses Monats zu finden:

%Vor%

Wir können die obige Funktion anwenden, um die Zeitstempel der nächsten Freitage zu erhalten:

%Vor%

Ausgabe:

%Vor%     
JuniorCompressor 23.02.2015 18:53
quelle
3

Wie wäre es mit einer einfacheren Antwort:

%Vor%     
rocketman 03.07.2017 06:11
quelle
2

Wir müssen nichts anderes als datetime importieren. Wir können 7 Tage in einer Woche und Wochentag 0 == Montag annehmen.

%Vor%     
pourhaus 21.12.2017 19:52
quelle
1

ist einfach zu verwenden, um den nächsten Freitag zu bekommen

%Vor%

dies nutzt die Tatsache, dass es immer eine Woche zwischen Freitagen ... obwohl ich nicht sicher bin, ob dies Ihre Frage beantwortet, sollte es Ihnen zumindest einen guten Startpunkt geben

    
Joran Beasley 23.02.2015 18:42
quelle
1

dateutil.relativedelta :

%Vor%

Oder verwenden Sie dateutil.rrule :

%Vor%

Hier ist eine Brute-Force-Lösung (15x schneller):

%Vor%

Ausgabe

%Vor%

Siehe datetime.date in UTC-Zeitstempel in Python konvertieren

Hier ist Vergleich mit anderen Lösungen und Tests (für alle möglichen 400 Jahre Muster) .

    
jfs 24.02.2015 12:56
quelle

Tags und Links