Mit diesem Python-Artefakt können Sie lange Zeit Fische fangen!

WBOY
Freigeben: 2023-04-11 20:07:22
nach vorne
1104 Leute haben es durchsucht

Mit diesem Python-Artefakt können Sie lange Zeit Fische fangen!

Ich wage zu garantieren, dass sich Ihre Effizienz beim Schreiben von Code nach der Verwendung verbessert!

Pampy ist ein Genie

Lasst uns zunächst den Mustervergleich bekannt machen.

Beim Mustervergleich wird ein bestimmtes Muster angegeben und anhand dieses Musters überprüft, ob eine Sequenz oder Zeichenfolge diesem Muster entspricht. Diese Technologie wird häufig in der Verarbeitung natürlicher Sprache verwendet.

Pampy ist eine Mustervergleichsbibliothek für Python. Es handelt sich um eine Bibliothek mit nur 150 Zeilen. Diese Bibliothek ist elegant und effizient und verdient es, zum grundlegenden Entwicklungsstapel von Python-Programmierern hinzugefügt zu werden.

Zufälligerweise verfügt das Programm auch über eine JavaScript-Versionsbibliothek mit dem gleichen Namen Pampy.js.

Bei Interesse können Sie den Quellcode lesen und in weitere Entwicklungssprachen kopieren.

Die Art und Weise, wie diese Bibliothek installiert wird, ist ebenfalls klischeehaft:

  • pip install pampy

Pampys schicke Show

einen einzelnen Charakter zuordnen

Wir können _ verwenden, um einen einzelnen Charakter zuzuordnen:

from pampy import _,match
a=['a',1,'b',2,'c',3,'d',4]
patter = ['a',1,'b',_,'c',3,'d',4]
action=lambda x: f'b is: {x}'
print(match(a,patter,action))
Nach dem Login kopieren

Ausführen Das Ergebnis ist:

  • b ist: 2

Wie Sie im obigen Beispiel sehen können, verwenden wir beim Abgleichen einfach das diesem Platzhalter entsprechende Element.

Matching-Wörterbuch

Wir können den Schlüssel oder Wert auf jeder Ebene im mehrstufigen Wörterbuch abgleichen:

from pampy import _, match
person = {
 'address': {'province': '湖北', 'city': '武汉', 'district': '东湖高新'},
 'name': '闲欢'
}
patter = {_: {_: '武汉'}}
action = lambda k1, k2: ({'k1': k1, 'k2': k2})
print(match(person, patter, action))
Nach dem Login kopieren

Das laufende Ergebnis ist:

  • {'k1': 'address', 'k2': ' city'}

Ähnlich wie im vorherigen Beispiel verwenden wir hier den Platzhalter _ und positionieren den Platzhalter dann in der Aktion, um das Ergebnis auszugeben.

Anfang und Ende anpassen

Im obigen Beispiel haben wir Platzhalter verwendet, um die Stelle zu besetzen, aber der Platzhalter kann nur mit einem Zeichen übereinstimmen. Im folgenden Beispiel verwenden wir die beiden Schlüsselwörter HEAD und TAIL Am Anfang und am Ende können sie so viele Zeichen enthalten, wie Sie möchten:

from pampy import _,match,HEAD,TAIL
a=['a',1,'b',2,'c',3,'d',4]
patter = [HEAD,_,'b',2,'c',3,TAIL]
action=lambda h,m,t: ({'head':h,'middle':m,'tail':t})
print(match(a,patter,action))
Nach dem Login kopieren

Wenn Sie das obige Beispiel ausführen, ist das Ergebnis:

  • {'head': 'a', 'middle': 1, 'tail': ['d ', 4]}

Aus den Ergebnissen können wir ersehen, dass HEAD mit einem Zeichen und TAIL mit zwei Zeichen übereinstimmt. Wenn bei der Ausgabe mehrere Zeichen vorhanden sind, wird das Ergebnis in Form eines Arrays angegeben.

Zusammenfassung

Pampys Beispiele sind sehr einfach und jeder kann sie verstehen, nachdem er sie gelesen hat. Wenn man sich ein paar Beispiele anschaut, hat man das Gefühl: Wow, solche Artefakte gibt es!

Natürlich bietet Pampy mehr als nur ein paar Möglichkeiten zum Mustervergleich, und es gibt noch mehr Möglichkeiten, die jeder erkunden kann.

Das obige ist der detaillierte Inhalt vonMit diesem Python-Artefakt können Sie lange Zeit Fische fangen!. 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