Informationen zu Python-Zeichenfolgenvergleichsoperatoren

Vor kurzem habe ich Code überprüft, der Daten in Python verarbeitet und einfache Warnfunktionen stapelweise verarbeitet.

Unter ihnen war ich überrascht, den folgenden Code zu finden. (Leicht umgeschrieben)

import pandas as pd

def select_this_month(df: pd.DataFrame) -> pd.DataFrame:
    """Extrahieren Sie nur die Daten dieses Monats
        Args:
            df:Zu filternder Datenrahmen
        Returns:
Gefilterter Datenrahmen
    """
    now = df["Date"].max()
    y, m = now[0:4], now[5:7]
    res = df[df['Date'] >= (y + "-" + m + "-01")]
    return res

Wenn ich mir diesen Code ansehe, verwende ich pandas'`` `max```, um den Maximalwert zu extrahieren (numerischer Typ oder datetime-Typ?), Slice, um den Teilstring zu extrahieren (Zeichenkettentyp?). Ich fragte mich: "Was ist das? Ein Datums-Typ, der in Pandas eingebaut ist?"

Bei näherer Betrachtung war dies nur ein Zeichenfolgentyp mit einem darin definierten Vergleichsoperator (Ungleichung).

a = '2016-12-31'
b = '2016-01-01'
a > b
# => True
a < b
# => False

Ich habe auch wo das Ergebnis des Vergleichsoperators angegeben ist in der offiziellen Python-Dokumentation gefunden. 。

Strings (instances of str) compare lexicographically using the numerical Unicode code points (the result of the built-in function ord()) of their characters.

Strings and binary sequences cannot be directly compared.

Ich werde es vorerst in Google übersetzen.

Strings (str-Instanzen) werden lexikografisch mit Unicode-Codepunkten für die Zeichen verglichen (Ergebnisse der integrierten Funktion ord ()). [3]

Strings und Binärsequenzen können nicht direkt verglichen werden.

Das ord function document sagt dies ebenfalls aus, sodass Vergleiche anscheinend mit Unicode-Punkten durchgeführt werden.

Gibt für eine Zeichenfolge, die ein einzelnes Unicode-Zeichen darstellt, eine Ganzzahl zurück, die den Unicode-Codepunkt für dieses Zeichen darstellt. Zum Beispiel gibt ord ('a') die ganze Zahl 97 zurück und ord ('€') (das Euro-Symbol) gibt 8364 zurück. Dies ist das Gegenteil von chr ().

Damit

Wenn ja, scheint es auch mit einem Zeichenkettentyp problemlos zu funktionieren.

Ich denke, es ist doch besser, den Datumstyp zu verwenden.

Recommended Posts

Informationen zu Python-Zeichenfolgenvergleichsoperatoren
Python Hinweis: Über den Vergleich mit is
Python: Strings kombinieren
Über die Einschlussnotation von Python
Python String Slice
Über Python tqdm.
Über die Python-Ausbeute
Python-String-Vergleich / benutze 'Liste' und 'In' anstelle von '==' und 'oder'
Informationen zur Python-Vererbung
Über Python, range ()
# 3 [python3] Verschiedene Operatoren
Über Python Decorator
Python2-Zeichenfolgentyp
Python-String-Format
Python # String-Typ
Informationen zur Python-Referenz
Über Python-Dekorateure
[Python] Über Multi-Prozess
Python-String-Inversion
Über Python für Schleife
Über Funktionsargumente (Python)
String-Manipulation in Python
[Python] Memo über Funktionen
[Python] Mehrzeilige Zeichenfolgenzuweisung
Python-String-Manipulations-Master
Zusammenfassung über Python3 + OpenCV3
Über Python für ~ (Bereich)
[Python] Memo Über Fehler
Informationen zur Python-Entwicklungsumgebung
Python: Über Funktionsargumente
[Python2] Datumszeichenfolge → UnixTime → Datumszeichenfolge
Zufällige String-Generierung (Python)
Python, über die Ausnahmebehandlung
Über Python Pyramid Traversal
Python Package Manager-Vergleich
Python3> Dokumentationszeichenfolge / Dokumentzeichenfolge
Über Python3 ... (Ellipsenobjekt)
[Python] Kapitel 01-01 Über Python (Erster Python)
[Python] Informationen zur Standardeingabe
Über __all__ in Python
Abbildung zur Verarbeitung von Python-Zeichenfolgen
Verschachteln von ternären Python-Operatoren
[Einführung in die Udemy Python3 + -Anwendung] 35. Vergleichsoperatoren und logische Operatoren
Paiza Python Primer 2: Lernen Sie bedingte Verzweigungs- und Vergleichsoperatoren
[Python] Informieren Sie sich über pip
[Python] Datum in Zeichenfolge konvertieren
Fabric unterstützt Python 3
Python-Einzug und String-Format
Geschwindigkeitsvergleich von Python, Java, C ++
Informationen zu Python-Objekten und -Klassen
Informationen zu Python-Variablen und -Objekten
[Python] Verwenden Sie eine Zeichenfolgenfolge
Über das Python-Modul venv
Nullobjektvergleich in Python
Python-Anfänger-Memorandum-Funktion
Verschiedene String-Operationen in Python integriert