[PYTHON] Erstellen einer Liste, wenn die Nomenklatur für einen bestimmten Zeitraum gültig ist

Hallo.

Dieses Mal erklärte ich die Punkte, die in Vorheriger Artikel :: "Einführung des Zeichnungscodes der Figur mit" Grad der Perfektion "der Wetterdaten" nicht erklärt werden konnten. Ich möchte Sie vorstellen.

Einführung

Die vom Meteorological Business Support Center erhaltenen meteorologischen Daten folgen dem von der International Meteorological Organization (GRIB2-Format) festgelegten Format.

Diese Daten werden zu jedem Zeitpunkt für jede Zeitauflösung benannt.

Listenerstellungscode

Dieses Mal werden wir eine nützliche Listenerstellung freigeben, wenn die Daten in regelmäßigen Zeitintervallen benannt werden.

time_list.py



def preparating_data(self, yyyy, mm, dd, hh):
  time_list = []
  num_time_list = len(time_list)
	
  month_thirtyone = [ 1, 3, 5, 7, 8, 10, 12 ]
  month_thirty    = [ 4, 6, 9, 11 ]
  month_twntynine = [ 2 ]

  while num_time_list < 13:
     time_list.append(str(yyyy) + str('%02d' % mm) + str('%02d' % dd) + str('%02d' % hh) + '00')
     #Aktion zum Hinzufügen einer 0- bis 1-stelligen Nummer
     hh = hh - 6

     if hh < 0 and dd == 1:
        mm, hh = mm - 1, 18
        if mm in month_thirty:
           dd = 30
     elif mm in month_thirtyone:
        dd = 31
     elif mm in month_twntynine:
     #Berücksichtigung des Jahres der Schwellung

        if yyyy % 4 == 0:
           dd = 28
        else:
           dd =29

     elif hh < 0:
        dd, hh = dd - 1, 18

     num_time_list += 1

return time_list

das ist alles.

Danke, dass du bis zum Ende zugesehen hast.

Referenz

・ Lesen Sie GRIB2 (Wetter-Binärdaten) selbst, ohne eine Bibliothek in PHP zu verwenden https://qiita.com/miyawa-tarou/items/e4eff81dfcac527572e5

・ Meteorologie x Python ~ Nationales synthetisches Radar ~ https://qiita.com/OSAKO/items/ef042f80ec63dd288225

Recommended Posts

Erstellen einer Liste, wenn die Nomenklatur für einen bestimmten Zeitraum gültig ist
Beim Erstellen einer Matrix in einer Liste
Einbetten in datetime, wenn nur die Zeit bekannt ist
Das Bild ist Namekuji
Vorsichtsmaßnahmen beim Erstellen eines zweidimensionalen Arrays mit denselben Werten
Notizen, wenn gcloud kaputt ist
Vorsichtsmaßnahmen bei Verwendung einer Liste oder eines Wörterbuchs als Standardargument
Unter Linux ist der Zeitstempel einer Datei etwas vorbei.
[Python] Ausführungszeit, wenn eine Funktion in einen Wörterbuchwert eingegeben wird
[Profil] Identifizieren Sie, wo das Programm lange dauert (google-perftool)
Vorsichtsmaßnahmen beim Erstellen eines Python-Generators
Es ist überraschend mühsam, eine Liste mit dem Datum und der Uhrzeit der letzten Anmeldung von Arbeitsbereichen abzurufen
Ein Memo beim Erstellen einer Umgebung, die vorerst mit Lambda @ Edge debuggt werden kann
[Einführung in Python] Was ist der Unterschied zwischen einer Liste und einem Taple?
[Python-Memo] Seien Sie vorsichtig, wenn Sie ein zweidimensionales Array erstellen (Liste der Listen).
Ein nützlicher Hinweis, wenn Sie Python nach langer Zeit verwenden
Was tun, wenn eine Warnmeldung in der Pip-Liste angezeigt wird?
Ändern Sie die Liste in der for-Anweisung
Wenn das Ziel Ubuntu 16.04 in Ansible ist
[Python] [Meta] Ist der Python-Typ ein Typ?
Wenn verzweigen, hängt davon ab, ob die Liste ein bestimmtes Element enthält
Unterschiede im Verhalten jeder LL-Sprache, wenn der Listenindex übersprungen wird
[Python] Lösung für das Problem, dass Elemente beim Kopieren einer Liste verknüpft werden
Vorsichtsmaßnahmen beim Erstellen einer Ansicht, die Datensätze nach Datum und Uhrzeit eingrenzt
Hinweise zum Anpassen der Diktatlistenklasse
DJango Memo: Von Anfang an (Erstellen einer Ansicht)
Machen Sie vorerst ein Histogramm (matplotlib)
Holen Sie sich nur Unterklassenelemente in eine Liste
Ein Memo beim Erstellen einer Python-Umgebung mit Miniconda
Verwenden Sie das elektronische Papiermodul als Aufgabenliste
Es ist ein Mac. Was ist der Linux-Befehl Linux?
Python Amateur versucht die Liste zusammenzufassen ②
Anweisungen beim Betrieb von Miniconda nach langer Zeit
virtualenv Das ist vorerst alles!
Es ist eine Huckepack-Geschichte über den Dienst, der "Nyan" zurückgibt, wenn Sie Ping drücken
Wenn eine Datei im freigegebenen Ordner von Raspberry Pi abgelegt wird, wird der Vorgang ausgeführt.
Importieren Sie audit.log in Splunk und überprüfen Sie das Verhalten beim ersten Start von Splunk.
Senden Sie eine Push-Nachricht an LINE Bot, wenn die LTE-M-Taste gedrückt wird [SORACOM]
So überprüfen Sie in Python, ob sich eines der Elemente einer Liste in einer anderen Liste befindet
Es gibt ein Muster, das das Programm bei Verwendung von Python-Threading nicht gestoppt hat
Ein Befehl zum Überprüfen, wenn etwas schief geht, wenn der Server nichts tut
[Achtung] Beachten Sie beim Erstellen eines Binärbilds (1 Bit / Pixel) das Dateiformat!
Wenn eine lokale Variable mit demselben Namen wie die globale Variable in der Funktion definiert ist