Ob es sich um die Python-Entwicklung oder die Entwicklung einer anderen Sprache handelt, wenn wir während der Entwicklung einige nützliche Tipps und Techniken beherrschen, wird dies unsere Entwicklungseffizienz heute, den Editor und alle anderen auf jeden Fall erheblich verbessern Ich teile einige häufige Fehler, die Anfänger beim Erlernen der Sprache in der Python-Entwicklung häufig machen.
">
Bitte beachten Sie: In diesem Artikel wird davon ausgegangen, dass wir alle Python 3 verwenden
1. Listenverständnis
Sie haben ein list: bag = [1, 2, 3, 4, 5]
Jetzt möchten Sie alle Elemente verdoppeln, sodass es so aussieht: [2, 4, 6 , 8, 10]
Die meisten Anfänger werden es aufgrund ihrer bisherigen Spracherfahrung wahrscheinlich so machen
bag = [1, 2, 3, 4, 5] for i in range(len(bag)): bag[i] = bag[i] * 2
Aber es gibt einen besseren Weg:
bag = [elem * 2 for elem in bag]
Ganz einfach, oder? Dies wird als Python-Listenverständnis bezeichnet.
2. Durchlaufen Sie die Liste
Fahren Sie mit der obigen Liste fort
Vermeiden Sie dies nach Möglichkeit:
bag = [1, 2, 3, 4, 5] for i in range(len(bag)): print(bag[i])
Stattdessen sollte es so aussehen:
bag = [1, 2, 3, 4, 5] for i in bag: print(i)
Wenn x eine Liste ist, können Sie über ihre Elemente iterieren. In den meisten Fällen benötigen Sie nicht den Index jedes Elements, aber wenn Sie müssen Verwenden Sie dazu die Aufzählungsfunktion. Sie sieht so aus:
bag = [1, 2, 3, 4, 5] for index, element in enumerate(bag): print(index, element)
C-Sprache
zu Python, Sie sind vielleicht daran gewöhnt:Aber Python bietet eine natürlichere und bessere Methode
a = 5 b = 10 # 交换 a 和 b tmp = a a = b b = tmp
Ist nicht so! Ist es nicht schön genug?
a = 5 b = 10 # 交换a 和 b a, b = b, a
Ganzzahlen
0 möchten, fällt Ihnen vielleicht als Erstes Folgendes ein:bag = [] for _ in range(10): bag.append(0)
Sehen Sie, wie elegant es ist
bag = [0] * 10
Ups! Alle Listen wurden geändert, und wir möchten nur die erste ändern:
bag_of_bags = [[0]] * 5 # [[0], [0], [0], [0], [0]] bag_of_bags[0][0] = 1 # [[1], [1], [1], [1], [1]]
Denken Sie auch daran:
„Vorzeitige Optimierung ist die Wurzel allen Übels“
Fragen Sie sich, ist das Initialisieren einer Liste notwendig? >5. Konstruktbag_of_bags = [[0] for _ in range(5)] # [[0], [0], [0], [0], [0]] bag_of_bags[0][0] = 1 # [[1], [0], [0], [0], [0]]
Variablen
gibt, vermeiden Sie Folgendes:
Ähm, wie chaotisch sieht das stattdessen aus? .format:
Viel besser! Python ermöglicht die Rückgabe mehrerer Elemente in einer Funktion, was das Leben jedoch
häufig macht beim Entpacken von Tupeln<.>:name = "Raymond" age = 22 born_in = "Oakland, CA" string = "Hello my name is " + name + "and I'm " + str(age) + " years old. I was born in " + born_in + "." print(string)
name = "Raymond" age = 22 born_in = "Oakland, CA" string = "Hello my name is {0} and I'm {1} years old. I was born in {2}.".format(name, age, born_in) print(string)
Es ist so effizient!
7. Zugriff auf Diktate (Wörterbücher) Sie werden auch oft
Schlüsseldef binary(): return 0, 1 result = binary() zero = result[0] one = result[1]
def binary(): return 0, 1 zero, one = binary()
zero, _ = binary()
Sie können auch die Diktatableitung verwenden.
Diese beiden Methoden sind teuer, da sie die Liste bei jedem Aufruf von count durchlaufen.countr = {} bag = [2, 3, 1, 2, 5, 6, 7, 9, 2, 7] for i in bag: if i in countr: countr[i] += 1 else: countr[i] = 1 for i in range(10): if i in countr: print("Count of {}: {}".format(i, countr[i])) else: print("Count of {}: {}".format(i, 0))
8 Bibliotheken verwenden
countr = {} bag = [2, 3, 1, 2, 5, 6, 7, 9, 2, 7] for i in bag: countr[i] = countr.get(i, 0) + 1 for i in range(10): print("Count of {}: {}".format(i, countr.get(i, 0)))
bag = [2, 3, 1, 2, 5, 6, 7, 9, 2, 7] countr = dict([(num, bag.count(num)) for num in bag]) for i in range(10): print("Count of {}: {}".format(i, countr.get(i, 0)))
countr = {num: bag.count(num) for num in bag}
2. Ihr Algorithmus ist möglicherweise optimal, sodass er schneller ausgeführt werden kann.
3. Abstraktion: Sie sind klar und gut dokumentiert, und Sie können sich auf diejenigen konzentrieren, die noch nicht implementiert wurden.
4. Endlich ist alles da, Sie müssen das Rad nicht neu erfinden.
9. Slicing/Stepping in einer Liste
from collections import Counter bag = [2, 3, 1, 2, 5, 6, 7, 9, 2, 7] countr = Counter(bag) for i in range(10): print("Count of {}: {}".format(i, countr[i]))
Das ist Slicing, wir legen den Stopppunkt bei 5 fest und vor dem Stoppen werden 5 Elemente aus der Liste entfernt .
Was tun mit den letzten 5 Elementen?
Verstehst du nicht? -5 bedeutet, dass 5 Elemente vom Ende der Liste übernommen werden. Wenn Sie Intervalle in einer Liste bearbeiten möchten, könnten Sie Folgendes tun:Aber Sie sollten es so machen:
bag = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] for elem in bag[:5]: print(elem)
Das ist Eine Liste tritt ein. list[::2] bedeutet, die Liste zu durchlaufen und ein Element in zwei Schritten zu entfernen.
Sie können list[::-1] verwenden, um eine coole Flip-Liste zu erstellen.
bag = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] for elem in bag[-5:]: print(elem)
Auf lange Sicht führt das Mischen von Tabulatoren und Leerzeichen zu einer Katastrophe, und Sie werden die Meldung „IndentationError: unerwarteter Einzug“ sehen. Unabhängig davon, ob Sie die Tabulatortaste oder die Leertaste wählen, sollten Sie sie in Ihren Dateien und Projekten weiterhin verwenden.
Ein Grund für die Verwendung von Leerzeichen anstelle von Tabulatoren ist, dass Tabulatoren nicht in allen Editoren gleich sind. Abhängig vom verwendeten Editor können Tabulatoren als 2 bis 8 Leerzeichen behandelt werden.
Sie können beim Schreiben von Code auch Leerzeichen verwenden, um Tabulatoren zu definieren. Auf diese Weise können Sie auswählen, wie viele Leerzeichen als Tabulatoren verwendet werden sollen. Die meisten Python-Benutzer verwenden 4 Leerzeichen.
Zusammenfassung
Die oben genannten Tipps sollten Sie bei der Python-Entwicklung beachten. Ich hoffe, dass sie für alle beim Erlernen und Verwenden von Python hilfreich sind Hinterlassen Sie eine Nachricht, um zu kommunizieren.
Das obige ist der detaillierte Inhalt vonTeilen Sie zehn Dinge mit, die Sie bei der Entwicklung von Python beachten sollten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!