Heim  >  Artikel  >  Backend-Entwicklung  >  So schreiben Sie sauberen Code in Python – Best Practices-Leitfaden

So schreiben Sie sauberen Code in Python – Best Practices-Leitfaden

王林
王林Original
2024-09-07 14:00:37734Durchsuche

How to Write Clean Code in Python - Best Practices Guide

Beim Schreiben von Python-Code ist es wichtig, dass er sauber und leicht lesbar ist. Sauberer Code bedeutet, dass Ihr Code gut organisiert, leicht verständlich und leicht zu warten ist. In diesem Leitfaden geben wir die besten Tipps, die Ihnen helfen, sauberen Code in Python zu schreiben, egal ob Sie Anfänger oder erfahrener Entwickler sind.

Warum sauberer Code wichtig ist

Das Schreiben von sauberem Code ist aus vielen Gründen unerlässlich:

  • Lesbarkeit: Sauberer Code ist leicht zu lesen, was anderen Entwicklern hilft, Ihren Code schnell zu verstehen.
  • Wartbarkeit: Wenn Ihr Code sauber ist, ist er einfacher zu aktualisieren, zu debuggen und zu verbessern.
  • Zusammenarbeit: Sauberer Code ist für die Teamarbeit unerlässlich, insbesondere wenn Sie Code mit anderen teilen oder an großen Projekten arbeiten.
  • Fehlervermeidung: Wenn Ihr Code sauber und organisiert ist, ist die Wahrscheinlichkeit geringer, dass Sie Fehler einführen. Sehen wir uns nun einige Best Practices an, die Ihnen dabei helfen, saubereren Code in Python zu schreiben.

1. Verwenden Sie aussagekräftige Variablen- und Funktionsnamen

Eine der einfachsten Möglichkeiten, die Lesbarkeit von Code zu verbessern, besteht darin, klare und aussagekräftige Namen für Variablen und Funktionen zu verwenden. Vermeiden Sie aus einem Buchstaben bestehende oder kryptische Namen wie x, y oder foo.

Beispiel:

# Bad example
def calc(x, y):
    return x + y

# Good example
def calculate_total_price(item_price, tax):
    return item_price + tax

Im zweiten Beispiel ist es leicht zu verstehen, was die Funktion tut, indem man sich einfach den Funktionsnamen und die Variablennamen ansieht.

2. Befolgen Sie den PEP 8 Style Guide

PEP 8 ist Pythons offizieller Styleguide und bietet Konventionen zum Schreiben von sauberem und lesbarem Code. Zu den wichtigsten PEP 8-Empfehlungen gehören:

  • Einrückung: Verwenden Sie 4 Leerzeichen pro Einrückungsebene.
  • Zeilenlänge: Halten Sie Zeilen kürzer als 79 Zeichen.
  • Abstand: Verwenden Sie Leerzeichen um Operatoren und nach Kommas.
  • Kommentare: Fügen Sie Kommentare hinzu, um komplexe Teile des Codes zu erklären. Durch die Einhaltung von PEP 8 wird sichergestellt, dass Ihr Code den Community-Standards von Python entspricht.

Beispiel:

# PEP 8 Example
def calculate_discounted_price(price, discount):
    """Calculate the final price after applying the discount."""
    discounted_amount = price * (discount / 100)
    final_price = price - discounted_amount
    return final_price

3. Schreiben Sie modularen Code

Teilen Sie Ihren Code in kleinere, überschaubare Funktionen auf. Jede Funktion sollte eine bestimmte Aufgabe ausführen, was das Lesen, Testen und Debuggen erleichtert.

Beispiel:

# Bad example
def process_order(customer, items):
    total_price = 0
    for item in items:
        total_price += item['price']
    if total_price > 100:
        discount = total_price * 0.1
        total_price -= discount
    # Send email
    print(f"Order confirmed for {customer['name']}")
    return total_price

# Good example
def calculate_total_price(items):
    return sum(item['price'] for item in items)

def apply_discount(total_price):
    if total_price > 100:
        return total_price * 0.9
    return total_price

def send_confirmation_email(customer):
    print(f"Order confirmed for {customer['name']}")

def process_order(customer, items):
    total_price = calculate_total_price(items)
    total_price = apply_discount(total_price)
    send_confirmation_email(customer)
    return total_price

Im verbesserten Beispiel ist der Code in kleinere Funktionen aufgeteilt, was das Verständnis und die Wartung erleichtert.

4. Verwenden Sie Listenverständnisse zur Vereinfachung

Listenverständnisse in Python bieten eine übersichtliche Möglichkeit, Listen zu erstellen. Durch ihre Verwendung kann Ihr Code sauberer und lesbarer werden.

Beispiel:

# Without list comprehension
squares = []
for x in range(10):
    squares.append(x ** 2)

# With list comprehension
squares = [x ** 2 for x in range(10)]

Das zweite Beispiel ist kürzer und leichter zu lesen.

5. Vermeiden Sie die Hardcodierung von Werten

Vermeiden Sie die direkte Hardcodierung von Werten in Ihrem Code. Verwenden Sie stattdessen Konstanten oder Konfigurationsdateien. Dadurch wird Ihr Code flexibler und einfacher zu aktualisieren.

Beispiel:

# Bad example
def calculate_discount(price):
    return price * 0.1  # Discount is hardcoded

# Good example
DISCOUNT_RATE = 0.1

def calculate_discount(price):
    return price * DISCOUNT_RATE

Im zweiten Beispiel wird der Rabattsatz in einer Konstante gespeichert, sodass er bei Bedarf einfacher geändert werden kann.

6. Fügen Sie Kommentare und Dokumentzeichenfolgen hinzu

Während sauberer Code selbsterklärend sein sollte, kann das Hinzufügen von Kommentaren und Dokumentzeichenfolgen dabei helfen, den Zweck komplexer Funktionen oder Algorithmen zu erklären.

  • Kommentare: Erklären Sie, warum ein bestimmter Ansatz verwendet wird.
  • Docstrings: Beschreiben Sie, was eine Funktion tut und welche Parameter sie hat. Beispiel:
def find_largest_number(numbers):
    """
    Find the largest number in a list.

    Args:
    numbers (list): A list of numbers.

    Returns:
    int: The largest number.
    """
    return max(numbers)

Der Dokumentstring hilft anderen Entwicklern zu verstehen, wie sie die Funktion verwenden, ohne den gesamten Code lesen zu müssen.

7. Halten Sie Ihren Code trocken (wiederholen Sie sich nicht)

Vermeiden Sie das Duplizieren von Code. Wenn Sie sich wiederholende Muster bemerken, versuchen Sie, Ihren Code umzugestalten, um Funktionen oder Klassen wiederzuverwenden. Dadurch wird Ihr Code besser wartbar und die Fehlerwahrscheinlichkeit verringert.

Beispiel:

# Bad example
def get_full_name1(first_name, last_name):
    return first_name + " " + last_name

def get_full_name2(first_name, last_name):
    return first_name + " " + last_name

# Good example
def get_full_name(first_name, last_name):
    return first_name + " " + last_name

8. Gehen Sie ordnungsgemäß mit Fehlern um

Behandeln Sie Ausnahmen immer mit Try- und Except-Blöcken, um zu verhindern, dass Ihr Programm abstürzt. Sie sollten auch informative Fehlermeldungen bereitstellen, um das Debuggen zu erleichtern.

Beispiel:

# Bad example
def divide_numbers(a, b):
    return a / b

# Good example
def divide_numbers(a, b):
    try:
        return a / b
    except ZeroDivisionError:
        return "Error: Cannot divide by zero"

Das zweite Beispiel verhindert einen Absturz und liefert eine hilfreiche Fehlermeldung.

9. Verwenden Sie F-Strings zur Formatierung

Python 3.6 führte F-Strings ein, eine einfache und lesbare Möglichkeit, Strings zu formatieren. Sie sind viel sauberer als ältere Methoden zur Zeichenfolgenformatierung.

Beispiel:

# Old way
name = "Alice"
greeting = "Hello, %s!" % name

# With f-strings
greeting = f"Hello, {name}!"

F-Strings erleichtern das Lesen und Warten Ihres Codes.

10. Use Meaningful Imports

Only import the necessary modules and functions. Avoid wildcard imports like from module import * as they can clutter the namespace and make it harder to track dependencies.

Example:

# Bad example
from math import *

# Good example
from math import sqrt, pi

Conclusion

Writing clean code in Python is a valuable skill that helps you create readable, maintainable, and bug-free software. By following the best practices outlined in this guide—using meaningful names, following PEP 8, keeping your code modular, and handling errors gracefully—you can significantly improve your coding style.

Focus on readability, simplicity, and consistency, and you'll be well on your way to writing clean, professional Python code.

Das obige ist der detaillierte Inhalt vonSo schreiben Sie sauberen Code in Python – Best Practices-Leitfaden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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