Die schwarze Magie der Formatierung von Python-Code mit einem Klick – Tutorial zur schwarzen Verwendung

Inhaltsverzeichnis

einführen

Eigenschaften von Schwarz

Installation und Konfiguration

Schwarz in Pycharm konfigurieren

Die Verwendung und Best Practices von Schwarz

Befehlszeilenparameter

Scannen Sie das angegebene Verzeichnis oder die angegebene Datei

zu guter Letzt

Referenzdokumentation


Hinweis: Nachfolgende Technologiefreigaben, sofortige Updates sowie zeitnahere technische Informationen und technische Lernmaterialien werden auf dem offiziellen Konto CTO Plus veröffentlicht . Bitte folgen Sie dem offiziellen Konto: CTO Plus

Im Bereich der Python-Programmierung sind Codelesbarkeit und -standardisierung sehr wichtig, da guter Code die Effizienz der Teamarbeit verbessern, Wartungskosten senken und die kontinuierliche Integration und Bereitstellung von Code erleichtern kann. Um die Konsistenz und Standardisierung des Codes aufrechtzuerhalten, hat die Python-Community viele Tools und Spezifikationen entwickelt. Eines der bekanntesten Tools ist Black.

black ist ein beliebtes automatisiertes Formatierungstool für Python-Code, das Entwicklern dabei helfen kann, Python-Code automatisch so zu formatieren, dass er der PEP 8-Spezifikation entspricht. Es kann das Format des Codes automatisch gemäß einer Reihe von Regeln anpassen, wodurch der Code aufgeräumter, lesbarer und konsistenter wird. Dieses Tool wird in meiner Produktentwicklung häufig verwendet.

Es zielt darauf ab, die Verwendung der PEP 8-Spezifikationen (Python Coding Style Guide) durchzusetzen und erfordert keinen manuellen Eingriff unsererseits. black verwendet eine Strategie namens „kompromissloser Codeformatierer“, die Code automatisch formatiert, ohne persönliche Vorlieben oder Projektstil zu berücksichtigen.

Dieser Artikel „Python Code Scanning: The Black Magic of One-Click Formatting Python Code – Black Usage Tutorial“ gehört zum zehnten Artikel in der Reihe „Python Code Specification and Scanning“. Die ersten neun Artikel können entsprechend Ihrer eigenen Situation konsultiert werden . Auch die Öffentlichkeit ist herzlich willkommen. Nr. CTO Plus Folgeartikel:

Codespezifikationen und Inhalt der statischen Scanserie:

  1. Statisches Scannen von Python-Code auf Unternehmensebene – Einführung in Codespezifikationen, Logik, Grammatik, Sicherheitsprüfungen und automatische Codeanordnung
  2. Lesen Sie die Python PEP8-Codespezifikation durch
  3. Python-Code-Scanning: Python-Linter-Tool der neuen Generation Ruff
  4. Python-Code-Scanning: Ein Artefakt zur Verbesserung der Qualität des Python-Codes – ausführliche Erklärung und Nutzungsanleitung für Pylint
  5. Python-Code-Scanning: Leichtes Python-Tool zur statischen Code-Analyse Pyflakes
  6. Python-Code-Scanning: ein leistungsstarkes Tool zur Python-Codespezifikation und Fehlerprüfung – flake8 ausführliche Erklärung und Übung
  7. Python-Code-Scanning: Die beste Wahl für die statische Typprüfung von Mypy
  8. Python-Code-Scanning: Redundanz im Python-Code automatisch entfernen – Tipps und Beispiele zur Verwendung von Autoflake
  9. Python-Code-Scanning: ein leistungsstarkes Tool zur Formatierung von Python-Code – ausführliche Erklärung und Best Practices
  10. Scannen von Python-Code: Die schwarze Magie der Formatierung von Python-Code mit einem Klick – Tutorial zur schwarzen Verwendung
  11. Python-Code-Scannen: Leitfaden zur automatischen Sortierung von Importanweisungen und isor-Nutzungsanleitungen und Beispielen
  12. Python-Code-Scanning: ein Tool zur automatischen Reparatur des Python-Codestils – autopep8 ausführliche Erklärung und Beispiele
  13. Python-Code-Scanning: Codespezifikationen und Fehlerprüfung in der Konfiguration und Verwendung von project-pyproject-flake8
  14. Python-Code-Scanning: Code-Sicherheitslücken-Scanning-Bandit auf Unternehmensebene

einführen

Das Python3-Black-Tool ist ein leistungsstarkes automatisiertes Codeformatierungstool, das die Lesbarkeit und Standardisierung von Code verbessern und die Schwierigkeit der Teamzusammenarbeit verringern kann. Durch die automatische Codeformatierung und die Verwendung des Black-Coding-Stils können wir die Codekonsistenz aufrechterhalten, die Effizienz der Teamzusammenarbeit verbessern und die Wartbarkeit von Projekten verbessern. Wenn wir Best Practices befolgen und eine gute Kommunikation und Beratung mit den Teammitgliedern pflegen, wird uns die Integration von Schwarz in unseren täglichen Entwicklungsprozess ein besseres Entwicklungserlebnis und eine bessere Codequalität bescheren.

Schwarz  ist unter den Code-Inspektionstools relativ neu. Es ähnelt Autopep8 und Yapf, ist jedoch eingeschränkter und bietet nicht viele Anpassungsoptionen. Dies hat den Vorteil, dass Sie nicht entscheiden müssen, welchen Codierungsstil Sie verwenden möchten, sondern Black einfach die Entscheidung treffen lassen müssen.

Black basiert auf Python 3.6+, kann jedoch in Python 2 geschriebenen Code formatieren.

Eigenschaften von Schwarz

black lässt sich mit den folgenden Funktionen und Vorteilen problemlos in Entwicklungsworkflows integrieren:

Zu den Merkmalen von Schwarz gehören Automatisierung, Konsistenz und Einfachheit, wodurch die Zeit für die Codeüberprüfung und -diskussion verkürzt und die Effizienz der Teamzusammenarbeit verbessert werden kann.

1. Automatisierte Formatierung: Black erkennt automatisch Syntax, Einrückungen, Leerzeilen, Zeilenumbrüche und andere Probleme im Code und nimmt Anpassungen gemäß den PEP 8-Spezifikationen vor. Dies reduziert unseren Arbeitsaufwand für die manuelle Codeformatierung und stellt die Konsistenz und Lesbarkeit des Codes sicher.

2. Schwarze Konfigurationsoptionen erfordern wenig oder keine Konfiguration: Das Designkonzept von Schwarz besteht darin, alle Codeformate gleich zu machen, sodass es keine Konfigurationsoptionen gibt. Auf diese Weise kann jeder im Team denselben schwarzen Codestil verwenden, was das Problem inkonsistenter Codeformate aufgrund persönlicher Vorlieben verringert und inkonsistente Formatspezifikationen aufgrund zu vieler Konfigurationsmöglichkeiten vermeidet.

3. Einfache Integration: Black kann problemlos in andere Entwicklungstools wie Editoren, IDEs, Codebibliotheken usw. integriert werden. Viele beliebte Code-Editoren und IDEs (wie VS Code, PyCharm, Sublime Text) bieten Plug-Ins oder Integrationen für Schwarz, sodass wir beim Speichern von Code automatisch Schwarz zur Formatierung verwenden können.

4. Erweiterbarkeit: Schwarz unterstützt viele Anpassungsoptionen und ignoriert Regeln, um den Anforderungen verschiedener Projekte gerecht zu werden. Durch die Formulierung spezifischer Optionen können wir das Verhalten von Schwarz an die spezifischen Anforderungen des Projekts anpassen.

5. Erzwingen Sie die Verwendung von Teamnormen: Schwarz stellt sicher, dass das gesamte Team denselben Codierungsstil verwendet, und vermeidet so Streitigkeiten über das Codeformat zwischen Teammitgliedern. Dies ist wichtig für die Aufrechterhaltung einer qualitativ hochwertigen Codebasis und die Verbesserung der Teamzusammenarbeit.

Installation und Konfiguration

Black kann mit pip über den folgenden Befehl installiert werden : Führen Sie Folgendes aus:

 Pip install schwarz 

Wenn Sie Conda als Paketmanager verwenden, können Sie Black mit dem folgenden Befehl installieren:

conda install -c conda-forge black

Nach der Installation sehen Sie die ausführbare Datei black.exe im Scripts-Verzeichnis.

Schwarz in Pycharm konfigurieren

Weitere Konfigurationsoptionen finden Sie in der offiziellen Dokumentation. Informationen zur Konfiguration in IDE PyCharm finden Sie in der vorherigen Nutzungskonfiguration von Ruff und Pylint. Im Folgenden sind meine Konfigurationsoptionen aufgeführt

Nach der Konfiguration können Sie Schwarz in externen Tools verwenden

Als nächstes werde ich meine Praxis mit Schwarz teilen.

Die Verwendung und Best Practices von Schwarz

Um die besten Ergebnisse und Erfahrungen bei der Verwendung von Black für die Python-Codeformatierung zu erzielen, sollten Sie die folgenden Best Practices berücksichtigen:

1. Verwenden Sie die Versionskontrolle in Projekten: Die Verwendung der Versionskontrolle (z. B. Git) in Projekten kann uns helfen, Code besser zu verwalten und historische Aufzeichnungen aufzubewahren. Stellen Sie vor der Verwendung von Schwarz sicher, dass unser Code in das Versionskontroll-Repository übernommen wurde, und erstellen Sie einen neuen Zweig zur Formatierung.

2. Sehen Sie sich die Änderungen in der Vorschau an, vergleichen Sie sie und achten Sie auf die Formatierungsergebnisse: Bevor Sie Schwarz ausführen, wird empfohlen, eine Vorschau der bevorstehenden Änderungen anzuzeigen. black bietet eine „--diff“-Option, die die Unterschiede für jede zu ändernde Datei anzeigt. Dies ermöglicht ein besseres Verständnis dafür, wie Schwarz den Code ändert, und bestätigt, dass die Änderungen wie erwartet sind. Denn obwohl Black Code automatisch formatieren kann, kann es manchmal zu unerwarteten Ergebnissen kommen. Daher wird empfohlen, nach dem Formatierungsvorgang die Formatierungsergebnisse sorgfältig zu überprüfen, um sicherzustellen, dass die Lesbarkeit und Wartbarkeit des Codes nicht beeinträchtigt werden.

3. Stapelformatierung: Schwarz kann den Code des gesamten Projekts stapelweise formatieren. Mit dem Befehl „black.“ können Sie alle Python-Dateien im aktuellen Verzeichnis und in den Unterverzeichnissen formatieren. Bitte beachten Sie, dass dadurch der Inhalt der Datei direkt aktualisiert wird. Bitte stellen Sie sicher, dass Sie unseren Code gesichert haben, bevor Sie ihn ausführen.

4. Editor-Plug-Ins konfigurieren: Die meisten gängigen Editoren (wie VS Code, PyCharm usw.) und IDEs bieten schwarze Plug-Ins oder Integrationen. Durch die Installation und Konfiguration geeigneter Plug-Ins kann die Formatierung beim Speichern des Codes automatisch schwarz werden und zeitnahes Feedback zur Verbesserung der Codequalität bereitgestellt werden.

5. Befolgen Sie die Teamnormen: Schwarz ist ein Werkzeug für Teamnormen, daher müssen die Regeln für die Verwendung von Schwarz im Projekt oder Team festgelegt werden, einschließlich der zu verwendenden Optionen und Regeln, und mit den Teammitgliedern geteilt werden.

6. Kombiniert mit Lint-Tools: Last but not least kann Black auch in Kombination mit anderen Lint-Tools (wie flake8, pylint usw.) verwendet werden, um die Qualität des Codes weiter zu verbessern. Das Lint-Tool kann dabei helfen, den Code auf potenzielle Probleme zu prüfen, und bei Verwendung mit Black kann es besser sicherstellen, dass der Code lesbar und wartbar ist.

Befehlszeilenparameter

Hier fasse ich einige häufig verwendete Befehlszeilenparameter des Black-Tools zusammen. Weitere Informationen finden Sie in der offiziellen Dokumentation:

--line-length=<Länge>: Legen Sie die maximale Anzahl von Zeichen pro Zeile fest, der Standardwert ist 88.

--skip-string-normalization: Normalisierung von Zeichenfolgen überspringen.

--include=<Muster>: Legen Sie die einzuschließenden Datei- oder Verzeichnismuster fest.

--exclude=<Muster>: Auszuschließende Datei- oder Verzeichnismuster festlegen.

Scannen Sie das angegebene Verzeichnis oder die angegebene Datei

 Sie können Black verwenden black path/to/dir , um  Ihren Code zu optimieren .black path/to/module.py 

Formatieren Sie eine einzelne Datei

Eine einzelne Python- Datei kann mit dem folgenden Befehl formatiert werden:

schwarz /path/to/file.py

Scannen Sie eine einzelne Datei in PyCharm

Dadurch wird der Code in der Datei direkt geändert, um der PEP 8-Spezifikation zu entsprechen.

Formatieren Sie das gesamte Verzeichnis

Alle Python-Dateien in einem gesamten Verzeichnis können mit dem folgenden Befehl formatiert werden:

schwarz /pfad/zum/verzeichnis

Scannen Sie das gesamte Projekt in PyCharm

Black durchläuft das Verzeichnis rekursiv und formatiert alle Python-Dateien.

Codeausschnitte formatieren

black kann Codefragmente auch formatieren mit:

schwarz -l 79 -

Geben Sie dann den Codeausschnitt ein, den Sie formatieren möchten, und drücken Sie Strg + D, um die Eingabe zu beenden.

zu guter Letzt

Black ist ein beliebtes Formatierungstool für Python-Code, das Entwicklern hilft, Python-Code automatisch so zu formatieren, dass er der PEP 8-Spezifikation entspricht. Durch die Verwendung von Black können Entwickler die Codeüberprüfungs- und Diskussionszeit verkürzen und die Effizienz der Teamzusammenarbeit verbessern. Wenn Sie Black verwenden, können Sie die Versionskontrolle kombinieren, auf Formatierungsergebnisse achten, mit Editor-Plug-Ins zusammenarbeiten und Lint-Tools und andere Best Practices kombinieren, um die Qualität und Wartbarkeit des Codes weiter zu verbessern. Lassen Sie uns gemeinsam Black verwenden, um Python-Code standardisierter und schöner zu machen!

Referenzdokumentation

https://en.wikipedia.org/wiki/Lint_(software)

GitHub – psf/black: Der kompromisslose Python-Codeformatierer

GitHub – psf/black: Der kompromisslose Python-Codeformatierer

https://black.readthedocs.io/en/stable/usage_and_configuration/index.html

Python-Codespezifikationen: Statisches Scannen von Code auf Unternehmensebene – Codespezifikationen, Logik, Syntax, Sicherheitsprüfungen und automatische Anordnung von Codespezifikationen (1)_pycharm Überprüfen Sie die Codespezifikationen_SteveRockets Blog-CSDN-Blog

https://blog.csdn.net/zhouruifu2015/article/details/129877179

Python-Kolumne
https://blog.csdn.net/zhouruifu2015/category_5742543


Weitere Informationen · Durchsuchen Sie das öffentliche WeChat-Konto [ CTO Plus ] und folgen Sie ihm, um weitere Informationen zu erhalten. Lassen Sie uns gemeinsam lernen und kommunizieren.

Eine Beschreibung des öffentlichen Kontos finden Sie unter dem folgenden Link


Für weitere spannende Neuigkeiten folgen Sie meinem offiziellen Account und lernen und wachsen Sie gemeinsam.

Über Articulate „Seien Sie ein Träger von Wissen und Technologie. Seien Sie ein Enthusiast des lebenslangen Lernens. Seien Sie ein technischer Kreis mit Tiefe und Breite.“ Ich wollte schon immer Fähigkeiten im beruflichen Bereich entwickeln https://mp.weixin.qq. com icon-default.png?t=N7T8/ s?__biz=MzIyMzQ5MTY4OQ==&mid=2247484278&idx=1&sn=2b774f789b4c7a2ccf10e465a1b9def6&chksm=e81c2070df6ba966026fd7851efa824b5e2704e3fd34e 76228ca4ce64d93f7964cd4abe60f2b#rd

Standard-Bibliotheksreihe – empfohlene Lektüre:

Empfohlene
Lektüre:

Ich denke du magst

Origin blog.csdn.net/zhouruifu2015/article/details/132832266
Empfohlen
Rangfolge