[Python] Konvertiert die Zeitanzeige (str-Typ) mit "" "und" '"in Sekunden (float-Typ) mit datetime und timedelta

Überblick

Ich kratzte etwas und hatte Probleme, die verstrichene Zeit zu verarbeiten, also machte ich mir eine Notiz. Kennen Sie die Notation einer solchen Stoppuhr? "X'yy" z "bedeutet" x Minuten yy.z Sekunden ". Dieses Mal möchte ich diese Zeichenfolge (Typ str) mit Python in Sekunden (Typ float) konvertieren. Zum Beispiel Die Konvertierung ist "1'45" 5 "-> 105,5 Sekunden.

1. Konvertieren Sie eine Zeichenfolge mit strptime of Datetime in den Typ datetime

Im Programm wird der Zeichenkettentyp von Python durch "hoge" oder "hoge" beschrieben, aber diesmal ist die Notation "x'yy" z "", "" in der Zeichenkette. Wird mit inbegriffen sein. In einem solchen Fall wird die Python-Zeichenfolge mit "" behandelt, und die Notation lautet "x " yy "z". Wenn dies mit strptime zu einem datetime-Typ gemacht wird, ist dies wie folgt.

from datetime import datetime
# %M ist Minuten,%S ist Sekunden,%f ist Mikrosekunden
strtime = '1\'45"5' #String
t = datetime.strptime(strtime, '%M\'%S"%f')
print('t:', t)
print('type:', type(t)) 

# Output
# t: 1900-01-01 00:01:45.500000
# type: <class 'datetime.datetime'>

Da datetime ein Datumstyp ist, beträgt er allein am 1. Januar 1900 0: 01: 45: 500.000 Mikrosekunden. Dieses Mal möchte ich es als "Zeit" anstelle von Datum behandeln, daher reicht dies nicht aus. Daher wird es in den Timedelta-Typ konvertiert.

2. In Zeitdelta-Typ konvertieren und dann in Sekunden konvertieren

timedelta steht für "Zeit" anstelle von "Datum", da es zum Addieren und Subtrahieren von Datum und Uhrzeit verwendet wird. Da es jedoch nicht möglich ist, direkt aus der Zeichenfolge zu konvertieren, wird der Datum / Uhrzeit-Typ zurückgegeben. Die Konvertierung vom Datum / Uhrzeit-Typ zum Zeit-Delta-Typ erfolgt wie folgt.

from datetime import timedelta
t_delta = timedelta(
    seconds=t.second,  #datetime Typ t Sekunden werden gespeichert
    microseconds=t.microsecond,  #Datetime Typ t Mikrosekunden werden gespeichert
    minutes=t.minute,  #Datetime Typ t Minuten werden gespeichert
)
print('t_delta:', t_delta)
print('type:', type(t_delta))
# Output
# t_delta: 0:01:45.500000
# type: <class 'datetime.timedelta'>

Sie können sehen, dass es sich beim Timedelta-Typ nicht um ein Datum handelt, sondern um 1 Minute 45 Sekunden 5 als Uhrzeit. Schließlich wird 1 Minute 45 Sekunden 5 nur in Sekunden umgewandelt. Natürlich können Sie die Programmierung manuell schreiben, aber timedelta hat eine Methode namens "total_seconds ()", die auf einmal in Sekunden umgewandelt werden kann!

tdl2sec = t_delta.total_seconds()
print(tdl2sec)
print(type(tdl2sec))

#Output
# 105.5
# <class 'float'>

Ein glückliches Ziel erreicht! !!

Recommended Posts

[Python] Konvertiert die Zeitanzeige (str-Typ) mit "" "und" '"in Sekunden (float-Typ) mit datetime und timedelta
So ermitteln Sie mit Python den Unterschied zwischen Datum und Uhrzeit in Sekunden
Ich habe versucht, datetime <-> string mit tzinfo mit strftime () und strptime () zu konvertieren.
Konvertieren Sie den exponentiellen Float in Python in str
Zur Darstellung von Datum, Uhrzeit, Uhrzeit und Sekunden in Python
So konvertieren Sie den Python # -Typ für Super-Anfänger von Python: str
0 Konvertieren Sie nicht ausgefülltes Datum in Datums- / Uhrzeittyp mit regulärem Ausdruck
So konvertieren Sie den Python # -Typ für Python-Superanfänger: int, float
[Python] Zeigt die verstrichene Zeit in Stunden, Minuten und Sekunden an (00:00:00)
Konvertieren Sie Videos mit ffmpeg + python + opencv in Schwarzweiß
Bestimmen Sie das Datums- und Uhrzeitformat mit Python und konvertieren Sie es in Unixtime
IME On / Off wird in Zusammenarbeit mit Python und Arduino durch LED angezeigt
Konvertieren Sie die Liste mit Python in DataFrame
Versuchen Sie, Google Map und Geography Map mit Python anzuzeigen
So berechnen Sie "xx time" in einem Schuss mit Python timedelta
Herausforderung beim Erstellen eines Zeitachsenlistenberichts mit der Toggl-API und Python
Versuchen Sie, Foldl und Foldr mit Python: Lambda zu machen. Auch Zeitmessung
Abrufen und Konvertieren der aktuellen Zeit in der lokalen Systemzeitzone mit Python
Lesen Sie die CSV-Datei mit Python und konvertieren Sie sie unverändert in DataFrame
Berechnen Sie das Standardgewicht und zeigen Sie es mit Python an
Von Python bis zur Verwendung von MeCab (und CaboCha)
Konvertieren Sie Memos sofort mit Python 2to3
Verwenden von Python und MeCab mit Azure Databricks
Konvertieren Sie Excel-Daten mit Python in JSON
Konvertiere Hiragana mit Python (Beta) in Romaji
Fraktal zum Erstellen und Spielen mit Python
So zeigen Sie Python-Japanisch mit Lolipop an
Empfangen Sie den Datumstyp (Datum / Uhrzeit) mit ArgumentParser [Python]
Konvertieren Sie chinesische Zahlen mit Python in arabische Zahlen
Ich verwende Tox und Python 3.3 mit Travis-CI
Beispiel für die Wavelet-Konvertierung von Bildern in Python
Formatieren und Anzeigen von Zeitreihendaten mit verschiedenen Maßstäben und Einheiten mit Python oder Matplotlib
[Python] Erstellen Sie eine Liste mit Datum und Uhrzeit (Datum / Uhrzeit-Typ) für einen bestimmten Zeitraum
Führen Sie Raw SQL mit Redash unter Verwendung der Python-Datenquelle aus und zeigen Sie das Ergebnis an
Konvertieren Sie CSV- und TsV-Daten in eine Matrix mit Python als Beispiel für MovieLens
Python datetime So berechnen Sie Datumsangaben und konvertieren Zeichenfolgen strftime, strptime [Definitive Edition]
Drei Dinge, von denen ich süchtig war, als ich Python und MySQL mit Docker verwendete
Kratzen Sie das Essen mit Python und geben Sie es an CSV aus
MessagePack-Versuchen Sie, Java und Python mit RPC zu verbinden
DICOM zu PNG Konvertierung mit aufsteigend und absteigend
Konvertieren Sie PDF in Bilder (JPEG / PNG) mit Python
Konvertieren Sie die "Anzahl" des Excel-Datums in die Python-Datumszeit
Konvertieren Sie PDFs mit Python in Massenbilder
Interaktive Anzeige algebraischer Kurven in Python, Jupyter
Konvertieren Sie die SVG-Datei mit Python in png / ico
Konvertieren Sie Windows-Epochenwerte mit Python in das Datum
So messen Sie die Ausführungszeit mit Python Teil 1
[Python3] Lesen und Schreiben mit datetime isoformat mit json
Konvertieren Sie STL mit Python VTK in ein Voxel-Netz
Konvertieren von (32,32,3) in einen 4-dimensionalen Tensor (1,32,32,1) mit ndarray-Typ
Wie man mit dem Datum / Uhrzeit-Typ in Pythons SQLite3 umgeht
[Python] Klassentyp und Verwendung des datetime-Moduls
[Python] Vergleichen von Datum und Uhrzeit mit der hinzugefügten Zeitzone
So messen Sie die Ausführungszeit mit Python Part 2
Konvertieren Sie die Zeichenfolge mit Python in ein zeichenweises Listenformat
Ich habe ein Programm erstellt, um Bilder mit Python und OpenCV in ASCII-Grafik umzuwandeln