Python ist eine leistungsstarke und benutzerfreundliche Sprache mit präziser und eleganter Syntax. Sie ist nicht so umständlich und unsinnig wie Java, und es gibt einige spezielle Funktionen oder Syntax, die den Code kürzer und prägnanter machen können.
Basierend auf der Erfahrung des Autors sind hier 5 häufig verwendete Python-Tipps:
Python ist gut darin, mathematische Operatoren (wie + und *) zu verwenden, um Strings zu bearbeiten: - + Spleißen String - * Wiederholter String
my_string = "Hi Python..!"print(my_string * 2)#Hi Python..!Hi Python..!print(my_string + " I love Python" * 2)#Hi Python..! I love Python I love Python
Sie können einen String auch einfach mit der Slice-Operation [::-1] umkehren, und dies ist nicht auf Strings beschränkt (wie das Umdrehen von Listen)!
my_string = "Hi Python..!"print(my_string[::-1])# !..nohtyP iHmy_list = [1,2,3,4,5] print(my_list[::-1])# [5, 4, 3, 2, 1]
Das Folgende ist eine Liste von Wörtern, die umgekehrt und zu einer Zeichenfolge verkettet sind:
word_list = ["awesome", "is", "this"]print(' '.join(word_list[::-1]) + '!') #this is awesome!
Verwenden Sie die .join()-Methode „“ (Leerzeichen), um alle Wörter in der umgekehrten Liste zu verbinden, und fügen Sie ein Ausrufezeichen hinzu!.
Listenableitung, eine Technik, die Ihr Weltbild verändern kann! Dies ist eine sehr leistungsstarke, intuitive und lesbare Möglichkeit, schnelle Operationen an Listen durchzuführen. Durchsuchen Sie außerdem den oberen Python-Hintergrund des öffentlichen Kontos und antworten Sie mit „Internet der Dinge“, um ein Überraschungsgeschenkpaket zu erhalten.
Angenommen, es gibt eine Zufallsfunktion, die das Quadrat einer Zahl zurückgibt und 5 hinzufügt:
def stupid_func(x): return x**2 + 5
Nun, wenn Sie die Funktion dumm_func() auf alle ungeraden Zahlen in der Liste anwenden möchten, wenn Sie keine Listenableitung verwenden , der dumme Weg ist wie folgt:
def stupid_func(x): return x**2 + 5my_list = [1, 2, 3, 4, 5] new_list = []for x in my_list: if x % 2 != 0: new_list.append(stupid_func(x)) print(new_list)#[6, 14, 30]
Wenn Sie die Listenableitung verwenden, wird der Code sofort elegant:
def stupid_func(x): return x**2 + 5my_list = [1, 2, 3, 4, 5] print([stupid_func(x) for x in my_list if x % 2 != 0])#[6, 14, 30]
Die Syntax der Listenableitung: [Ausdruck für Element in der Liste]. kann auch eine Beurteilungsbedingung hinzufügen, wie zum Beispiel die Bedingung „ungerade Zahl“ oben: [Ausdruck für Element in der Liste, wenn bedingt]. Im Wesentlichen das, was der folgende Code bewirkt:
for item in list: if conditional: expression
Sehr cool! . Aber Sie können noch einen Schritt weiter gehen und die Funktion studid_func() direkt weglassen:
my_list = [1, 2, 3, 4, 5]print([x ** 2 + 5 for x in my_list if x % 2 != 0])#[6, 14, 30]
Lambda sieht etwas seltsam aus, aber seltsam Die Funktionen sind im Allgemeinen sehr leistungsstark und intuitiv, sobald Sie sie beherrschen, wodurch eine Menge unsinniger Codes eingespart werden.
Grundsätzlich ist eine Lambda-Funktion eine kleine anonyme Funktion. Warum anonym?
Da Lambda am häufigsten zum Ausführen einfacher Operationen verwendet wird, aber nicht so schwerwiegend sein muss wie def my_function (), wird Lambda auch als Gelegenheitsfunktion bezeichnet (erfunden, ignorieren Sie es).
Verbessern Sie das obige Beispiel: def dumm_func(x) kann durch eine einzeilige Lambda-Funktion ersetzt werden:
stupid_func = (lambda x : x ** 2 + 5) print([stupid_func(1), stupid_func(3), stupid_func(5)])#[6, 14, 30]
Warum also diese seltsame Syntax verwenden? Dies ist nützlich, wenn Sie einige einfache Vorgänge ausführen möchten, ohne tatsächliche Funktionen zu definieren.
Nehmen Sie als Beispiel eine Liste mit Zahlen. Angenommen, die Liste ist sortiert? Eine Möglichkeit besteht darin, die Methode sorted() zu verwenden:
my_list = [2, 1, 0, -1, -2] print(sorted(my_list))#[-2, -1, 0, 1, 2]
Die Funktion sorted() kann die Sortierung abschließen, aber was ist, wenn Sie nach dem Quadrat jeder Zahl sortieren möchten? Zu diesem Zeitpunkt kann die Lambda-Funktion verwendet werden, um den Sortierschlüsselschlüssel zu definieren, der auch von der Methode sorted() verwendet wird, um zu bestimmen, wie sortiert wird:
my_list = [2, 1, 0, -1, -2] print(sorted(my_list, key = lambda x : x ** 2))#[0, -1, 1, -2, 2]
map ist eine in Python integrierte Funktion ordnet die angegebene Sequenz gemäß der bereitgestellten Funktion zu. Angenommen, Sie haben eine Liste und möchten jedes Element in der Liste mit dem entsprechenden Element in einer anderen Liste multiplizieren. Verwenden Sie Lambda-Funktionen und Karten!
print(list(map(lambda x, y : x * y, [1, 2, 3], [4, 5, 6]))) #[4, 10, 18]
Im Gegensatz zu diesem regulären Nonsens-Code, einfach und elegant:
x, y = [1, 2, 3], [4, 5, 6] z = []for i in range(len(x)): z.append(x[i] * y[i])print(z) #[4, 10, 18]
in Ihrem Code Irgendwo , es kann eine unsinnige bedingte Anweisung wie diese geben:
x = int(input())if x >= 10:print("Horse") elif 1 < x < 10:print("Duck")else:print("Baguette")
Wenn das Programm ausgeführt wird, werden Sie aufgefordert, eine Information aus der Funktion input() einzugeben, z. B. die Eingabe von 5, um Duck zu erhalten. Tatsächlich können Sie das Ganze aber auch mit einer Codezeile vervollständigen:
print("Horse" if x >= 10 else "Duck" if 1 < x < 10 else "Baguette")
Eine Codezeile ist einfach und unkompliziert! Wenn Sie Ihren alten Code durchsehen, werden Sie feststellen, dass viele Urteile auf eine einzige Wenn-Sonst-Beurteilung reduziert werden können -Zeilenausdruck.
Erinnern Sie sich noch an die bitweise Multiplikation zweier Listenelemente im Funktionsteil map()?
zip() macht es noch einfacher. Angenommen, es gibt zwei Listen, eine mit Vornamen und eine mit Nachnamen. Wie füge ich sie der Reihe nach zusammen? Verwenden Sie zip()!
first_names = ["Peter", "Christian", "Klaus"] last_names = ["Jensen", "Smith", "Nistrup"]print([' '.join(x) for x in zip(first_names, last_names)]) #['Peter Jensen', 'Christian Smith', 'Klaus Nistrup']
Ich hoffe, dass die 5 oben aufgeführten schnellen Tipps für Sie nützlich sind.
Das obige ist der detaillierte Inhalt vonFünf lebensrettende Python-Tipps. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!