Heim >Backend-Entwicklung >Python-Tutorial >Automatisches Formatierungstool für die Python-Sprache
Jede Programmiersprache verfügt über ein eigenes spezielles Formatierungstool, z. B. gofmt in der Golang-Sprache, prettier in der JavaScript-Sprache und php-cs-fixer in der PHP-Sprache. Ähnlich wie diese Programmiersprachen verfügt auch Python über ein eigenes automatisiertes Formatierungstool, jedoch nicht ist anders. Darüber hinaus verfügt es über viele Formatierungstools. Schauen wir uns als Nächstes die Unterschiede zwischen diesen verschiedenen Formatierungstools an.
Dies ist das früheste Python-Codeformatierungstool. Es verwendet Pycodestyle, um den Code zu analysieren und dann den Code zu reparieren, der nicht dem Pep-Stil entspricht. Gleichzeitig wird auch veralteter Code korrigiert, das Ende des Codes standardisiert und einige Leerzeilentrennzeichen für einige Methoden und Funktionen hinzugefügt.
autopep8 unterstützt die Formatierungsdeklaration über Konfigurationsdateien. Konfigurationsdateien in den Formaten cfg, .ini, .pep8, .flake8 und anderen. Derzeit hat er mehr als 4200 Likes auf Github.
Dies ist ein Formatierungstool, das von Google eingeführt wurde. Da es von einem großen Hersteller unterstützt wird, hat es sich schnell entwickelt und hat derzeit 13.000 Likes auf Github. Es überprüft keine Pep-Richtlinien, sondern formatiert lediglich den Code. Es braucht so etwas wie clang-format
Die Idee besteht darin, den gesamten Dateicode zu lesen und ihn dann in das beste Format zu formatieren. clang-format
的思想,就是读取整个文件代码,然后格式化成最佳的格式。
它是一个可配置的代码格式方案,不同的配置会导致不同的格式化结果,目前主流的配置有 pep8,google,facebook,chromium 等。此外,它还支持自定义配置方案,通过--style
即可指定格式样式。
x = {'a':37,'b':42, 'c':927} y = 'hello ''world' z = 'hello '+'world' a = 'hello {}'.format('world') class foo( object): def f(self ): return 37*-+2 def g(self, x,y=42): return y def f( a ) return37+-+a[42-x :y**3]
上面杂乱无章的代码经过yapf
--style
kann den Formatstil angeben. x = {'a': 37, 'b': 42, 'c': 927} y = 'hello ' 'world' z = 'hello ' + 'world' a = 'hello {}'.format('world') class foo(object): def f(self): return 37 * -+2 def g(self, x, y=42): return y def f(a): return 37 + -+a[42 - x:y**3]
yapf
Nach der Formatierung wird es sehr regelmäßig und einfacher zu lesen. rrreee
blackblack ist ein neues Python-Code-Formatierungstool, das in den letzten Jahren eingeführt wurde. Es ist zwar das neueste, aber auch das beliebteste. Es hat derzeit mehr als 30.000 Likes auf Github.
black ist als kompromissloses Code-Formatierungstool bekannt. Mit anderen Worten: Es ist nicht möglich oder erforderlich, dass Sie die Details des Codeformats standardmäßig manuell anpassen.
Es hat eine sehr effiziente Geschwindigkeit und wird von vielen Projekten verwendet.
Black verfügt über eine umfassende Testsuite mit effizienten parallelen Funktionstests. Hier sind einige Organisationen, die Black verwenden: Facebook, Dropbox, KeepTruckin, Mozilla, Quora, Duolingo, QuantumBlack, Tesla, Archer Aviation. Sie können sehen, dass viele bekannte Unternehmen es zum Formatieren von Python-Code verwenden, einfach weil es so einfach zu verwenden und bequem ist. ZusammenfassungAutopep8 wurde fast aufgegeben, wie aus der Anzahl der Likes auf Github hervorgeht. Yapf verfügt über eine flexiblere und stärker angepasste Formatierungslösung, während Schwarz das Programm einheitlicher und eleganter aussehen lässt und komplexere Konfigurationen ermöglichen vermieden werden.
🎜🎜Wenn Ihr Unternehmen oder Sie Python für die Projektentwicklung verwenden, ist es unbedingt erforderlich, ein Codeformatierungstool auszuwählen, das Ihrem Entwicklungsteam viel Zeit sparen kann. Unabhängig davon, ob es sich um Ihren persönlichen Code oder den Code anderer Personen handelt, sieht das Format gleich aus, sodass jeder gerne den Code anderer Personen liest. 🎜Das obige ist der detaillierte Inhalt vonAutomatisches Formatierungstool für die Python-Sprache. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!