Automatisches Formatierungstool für die Python-Sprache

WBOY
Freigeben: 2023-04-13 09:16:12
nach vorne
2461 Leute haben es durchsucht

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.

autopep8

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.

yapf

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]
Nach dem Login kopieren

上面杂乱无章的代码经过​​yapf​

Es handelt sich um eine konfigurierbare Codeformatlösung. Verschiedene Konfigurationen führen zu unterschiedlichen Formatierungsergebnissen. Zu den aktuellen Mainstream-Konfigurationen gehören Pep8, Google, Facebook, Chrom usw. Darüber hinaus unterstützt es auch benutzerdefinierte Konfigurationsschemata durch​​--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]
Nach dem Login kopieren
Der obige chaotische Code wird durch​​yapf​​Nach der Formatierung wird es sehr regelmäßig und einfacher zu lesen.

rrreee

black

Automatisches Formatierungstool für die Python-Spracheblack 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.

Automatisches Formatierungstool für die Python-Spracheblack 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.

Automatisches Formatierungstool für die Python-SpracheEs 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.

Zusammenfassung

Automatisches Formatierungstool für die Python-SpracheAutopep8 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!

Verwandte Etiketten:
Quelle:51cto.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage