Bisher habe ich den Python-Code für scikit-image geändert. Außerdem habe ich es auf der Ebene eingeführt, auf der ich mich vorerst bewegen sollte. Das reicht nicht für immer, deshalb zeige ich Ihnen, wie Sie Ihren Python-Code unter Verwendung der Spyder-Integrationsumgebung verbessern können. Dieser Artikel ist speziell für Anfänger. Es enthält keine nützlichen Informationen für diejenigen, die bereits mit Python vertraut sind.
Weitere Informationen zum Verbessern Ihres Codes mithilfe der Spyder-Integrationsumgebung finden Sie im folgenden Blogbeitrag. Von dort aus werde ich die Teile aufschreiben, die ich oft überprüfe.
Blog-Artikel [[Serie] "CV-Programmierung mit Python und OpenCV" Teil 5: GUI-Betrieb von Spyder](http://gyao.yahoo.co.jp/player/00220/v12056/v1000000000000001123/?auto=1&rep = 2)
Löschen Sie daher unnötige Importe oder den Code, der nicht verwendete Objekte berechnet.
Auf diese Weise können Sie das Auftreten bedeutungsloser Unterschiede beim Verwalten von Versionen mit SVN verhindern. "Code-Analyse durch Pylint (Soucer> Pylint-Code-Analyse ausführen)" Sie können das Lesen vereinfachen, indem Sie den Codierungsstil überprüfen, der in Pylint durch Ausführen ausgegeben wird.
Sie können überprüfen, ob der Codierungsstil übereinstimmt.
Python-Lernprogramm Dokumentationszeichenfolge Die Dokumentationszeichenfolge lautet
def square(x):
"""return square value"""
return x**2
Schreiben Sie so. Sie können die dreifachen Anführungszeichen "" "oder" "verwenden, um mit Zeichenfolgen zu arbeiten, die mehrere Zeilen umfassen. Wenn Sie die Dokumentationszeichenfolge auf diese Weise schreiben, können Sie die Hilfe ausführen, um zu sehen, wie sie wie folgt verwendet wird.
>>>help(square) square(x) return square value
>>> Und so weiter können Sie Hilfe wie jede andere Bibliothek verwenden.
Wenn Sie Unicode verwenden
Verwenden Sie den Buchstaben u, z. Python-Standardbibliothek [Sequenztyp - str, Unicode, Liste, Tupel, Bytearray, Puffer, X-Bereich](http://docs.python.jp/2.7/library/stdtypes.html#str-unicode-list-tuple-bytearray- buffer-xrange)
Unicode-Zeichenfolgen sind fast identisch mit Zeichenfolgen, werden jedoch am Anfang mit dem Buchstaben 'u' angegeben, z. B. u'abc ', u "def".
Wenn die Datei eine Unicode-Zeichenfolge enthält, fügen Sie die Zeichencode-Spezifikation am Anfang des Skripts hinzu. (Ohne den Zusatz kann der Python-Interpreter die Zeichenfolge möglicherweise nicht verarbeiten und einen Fehler verursachen.)
#!/usr/bin/env python
# -*- coding: utf-8 -*-
Fügen Sie die folgende Zeile hinzu, nachdem Sie den Zeichencode des Python-Quellcodes angegeben haben. #pylint:disable=C0103
Der Zeichencode wird auch beim Speichern des Skripts in einer Textdatei verwendet.
from pylab import * Es wird nicht empfohlen, alle Module wie diesen ohne den Namespace [Hinweis 1] zu schreiben. import pylab
Sie müssen es häufig in C ++ implementieren. Wenn Sie mit dem Algorithmus experimentieren müssen, ist die Datenstruktur durcheinander und die Variablennamen sind img2 und tmp, was nicht empfohlen wird. Da es eine andere Rolle spielt als beim ersten Auftauchen, können Variablen und Funktionsnamen unabhängig von der Art der Sprache leicht von ihren tatsächlichen Aufgaben abweichen. Es ist einfach, nicht verwendete Variablen, unnötige Importe oder unnötige #inculde zu belassen. Wenn Sie dasselbe tun möchten, sollte Python einfacher umzugestalten sein, da es weniger Linien und eine bessere Sichtbarkeit aufweist. Spyder-Integrationsumgebung, Pylint usw. erleichtern das Refactoring in Python. Schreiben Sie dann Code, der klar genug ist. Testen und profilieren Sie anschließend, um die Ausführungszeit zu verkürzen, ohne die Genauigkeit zu beeinträchtigen. Ich finde Python mehrmals einfacher als C ++. Auf diese Weise sollte die C ++ - Implementierungszeit kürzer sein, wenn Sie über einen ausreichend ausgefeilten Algorithmus verfügen.
Anmerkung 1: vom Pylab-Import * Es gibt einen Vorteil, dass Sie es wie MATLAB verwenden können, aber from cv2 import * Wenn du mit schreibst imshow() Es ist gefährlich, weil Sie nicht sagen können, was imshow () ist.
Recommended Posts