Python schlägt fehl, wenn nach dem Backslash ein Leerzeichen steht

Ich bin sicher, dass es allgemein bekannt ist, aber ich gebe diesen Artikel im Sinne von Selbstdisziplin zu, weil ich es getan habe.

Aus der Schlussfolgerung

――Sie können kein Leerzeichen hinter dem hinteren Leerzeichen lassen.

Hintergrund davon

Ich habe den Code geändert, den andere in dem von anderen verwalteten Git-Projekt geschrieben haben. Die Änderung ist eine einfache Sache des Hinzufügens von Where of the SQL-Anweisung.

Ich habe den Code wie folgt geändert.

Vor der Korrektur


    ...
    sql = "SELECT "\
          "  user.id ,"\
          "  user.name "\
          "FROM "\
          "  user "\
          "WHERE "\
          "  user.age >= 20 "\
          "  AND user.sex == 'M' "
    c.execute(sql)
    ...

Überarbeitet



    ...
    sql = "SELECT "\
          "  user.id ,"\
          "  user.name "\
          "FROM "\
          "  user "\
          "WHERE "\
          "  user.age >= 20 "\
          "  user.age <= 60 "\␣␣␣␣␣␣␣␣
          "  AND user.sex == 'M' "
    c.execute(sql)
    ...

Ein paar Wochen nach dem Hochladen des Codes auf git. Ungefähr zu der Zeit, als ich vergaß, es nach bestandener Überprüfung und Überprüfung auf die Produktion anzuwenden. Der Kunde sagte mir, dass der Ort, an dem ich SQL abrief, nicht zu funktionieren schien. Nach der Untersuchung habe ich diesen Fehler erhalten.

SyntaxError: EOL while scanning string literal

Kann es nicht glauben.

Warum das passiert ist

Tatsächlich war dieser Code eine Datei, die für die Produktionsumgebung und die Testumgebung getrennt verwaltet wurde. ← Diese Struktur selbst ist nicht gut Es ist jedoch nicht der Code, den ich verwalte, daher habe ich den Code für die Testumgebung geändert, wie mir gesagt wurde. Kopieren Sie nach dem Bestehen des Entwicklertests den geänderten Code und senden Sie ihn an die Produktionsquelle. Zu dieser Zeit schien es am Ende eine Lücke zu geben.

Für das korrigierte Teil wurde eine umfassende Überprüfung durchgeführt und bestanden. Zu diesem Zeitpunkt wurde auch der Testcode verwendet. Da der Produktionscode nur Leerzeichen enthält, wird er unentdeckt freigegeben. Und es geschah, als der Kunde es benutzte.

Gegenmaßnahmen

Es gibt viele Dinge, die ich im Ablauf der Organisationsentwicklung sagen möchte:

Implementieren Sie vorerst Folgendes als persönliche Maßnahme

Ich kann nichts machen ...

Recommended Posts

Python schlägt fehl, wenn nach dem Backslash ein Leerzeichen steht
Überprüfen Sie, ob die Zeichenfolge eine Zahl in Python ist
Löschen Sie ein bestimmtes Zeichen in Python, wenn es das letzte ist
[Python] [Meta] Ist der Python-Typ ein Typ?
Was tun, wenn in python json .dumps eine Dezimalstelle enthalten ist?
Wenn verzweigen, hängt davon ab, ob die Liste ein bestimmtes Element enthält
Erstellen Sie ein Python-Skript, um zu überprüfen, ob der Link unter der angegebenen URL gültig ist
So überprüfen Sie in Python, ob sich eines der Elemente einer Liste in einer anderen Liste befindet
Python> Überprüfen Sie NoneType oder nicht> wenn a == None:> wenn a None ist:
Es gibt ein Muster, das das Programm bei Verwendung von Python-Threading nicht gestoppt hat
[Python] Stellen Sie sicher, dass die empfangene Funktion eine benutzerdefinierte Funktion ist
Überprüft, ob für alle Dateien im Verzeichnis Python eine bestimmte Zeichenfolge vorhanden ist, und gibt die Zielzeile aus
Beim Lesen eines Bildes mit SimpleITK tritt ein Problem auf, wenn sich Japanisch im Pfad befindet
Welches ist schließlich das beliebteste Python-Visualisierungstool?
Ich möchte initialisieren, wenn der Wert leer ist (Python)
Bestimmen Sie, ob die Zeichenfolge Zeit mit einem regulären Python-Ausdruck ist
[Python] Mit Scheiben umkehren! !! (Es gibt auch einen Kommentar zu Scheiben!)
Gibt es eine Verzerrung in den Zahlen, die in den Fibonacci-Zahlen erscheinen?
Gibt es ein Geheimnis in der Häufigkeit der Umfangszahlen?
Das Bild ist Namekuji
Wenn im Python-Wörterbuch auf einen nicht vorhandenen Schlüssel zugegriffen wird, initialisieren Sie ihn mit einem beliebigen Wert
[Blender] Skript zum Überprüfen, ob es sich bei dem ausgewählten um ein Netz handelt
Spielen Sie Sounds in Python ab, vorausgesetzt, die Tastatur ist eine Klaviertastatur
Stellen Sie fest, ob beim Ausführen eines Python-Skripts eine Standardausgabe weitergeleitet wird
Nachdem ich die Python-Bibliothek recherchiert hatte, verstand ich ein wenig über ei.info.
[Golang] Überprüfen Sie, ob eine bestimmte Zeichenfolge in der Zeichenfolge enthalten ist
Überprüfen Sie, ob die ausführbare Datei und ihre abhängigen Bibliotheken ein bestimmtes Symbol enthalten (vereinfachte Version).
Python> Slice> Ein Slice-Offset vor dem Anfang eines Strings wird als 0 und einer nach dem Ende als -1 behandelt
Gibt es ein besonderes in scipy? ??
[Python] Was ist @? (Über Dekorateure)
[Python] Was ist der sortierte Schlüssel?
[Python] Machen Sie die Funktion zu einer Lambda-Funktion
Stellen Sie fest, ob die Zeichenfolge formatierbar ist
In Python gibt es keinen Schalter
Stellen Sie fest, ob die Bibliothek installiert ist.
Wofür ist der Python-Unterstrich (_)?
[Python] Bestimmen Sie, ob sich ein Koordinatenpunkt innerhalb oder außerhalb des Polygons befindet
[Python] Was ist ein formales Argument? So stellen Sie den Anfangswert ein
Was ist die XX-Datei im Stammverzeichnis eines beliebten Python-Projekts?
Wenn Sie einen Singleton in Python möchten, stellen Sie sich das Modul als Singleton vor
[Einführung in Python] Was ist der Unterschied zwischen einer Liste und einem Taple?
Wird der Leerzeichen bei der Verarbeitung der prozentualen Codierung durch ein Pluszeichen oder% 20 ersetzt?
DJango-Memo: Von Anfang an (Bearbeiten des Verwaltungsbildschirms) Es gibt ein Rätsel
Ich habe ein Skript erstellt, um zu überprüfen, ob an der angegebenen Position der JSON-Datei in Python Englisch eingegeben wird.