Heim > Backend-Entwicklung > Python-Tutorial > Python implementiert eine Methode zum Extrahieren von Teilmengen aus einem Wörterbuch (Code)

Python implementiert eine Methode zum Extrahieren von Teilmengen aus einem Wörterbuch (Code)

不言
Freigeben: 2018-10-23 16:11:49
nach vorne
2085 Leute haben es durchsucht
Der Inhalt dieses Artikels befasst sich mit der Methode (Code) zum Extrahieren von Teilmengen aus dem Wörterbuch. Ich hoffe, dass er für Sie hilfreich ist.

1. Anforderungen

Wir möchten ein Wörterbuch erstellen, das selbst eine Teilmenge eines anderen Wörterbuchs ist.

2. Lösung

Es kann leicht mithilfe der Wörterbuchableitung gelöst werden.

prices={
'a':1.1,
'b':2.2,
'c':3.3,
'd':4.4,
'e':5.5
}
p1={key:value for key ,value in prices.items() if value>3}
print(p1)

names={'a','b'}
p2={key:value for key,value in prices.items() if key in names}
print(p2)
Nach dem Login kopieren

Ergebnis:

{'c': 3.3, 'd': 4.4, 'e': 5.5}
{'a': 1.1, 'b': 2.2}
Nach dem Login kopieren

3. Analyse

Die meisten Probleme, die durch Wörterbuchableitung gelöst werden können, können auch durch die Erstellung einer Sequenz gelöst werden von Tupeln und dann Sie werden zur Vervollständigung an die Funktion dict() übergeben, zum Beispiel:

#结果为:{'c': 3.3, 'd': 4.4, 'e': 5.5}
p3=dict((key,value) for key,value in prices.items() if value>3)
Nach dem Login kopieren

Aber die Wörterbuchableitungsmethode ist klarer und läuft tatsächlich viel schneller. (Die erste Effizienz wird fast doppelt so schnell sein)

Manchmal gibt es mehrere Möglichkeiten, dasselbe in derselben Zeit zu erledigen. Das zweite Beispiel kann beispielsweise auch wie folgt umgeschrieben werden:

#结果为:{'b': 2.2, 'a': 1.1}
p4={key:prices[key] for key in prices.keys() & names}
Nach dem Login kopieren

Tests zeigen jedoch, dass diese Lösung fast 1,6-mal langsamer ist als die erste. Wenn es mehrere Lösungen für dasselbe Problem gibt, können Sie daher einen kleinen Test durchführen, um die aufgewendete Zeit zu untersuchen.

Das obige ist der detaillierte Inhalt vonPython implementiert eine Methode zum Extrahieren von Teilmengen aus einem Wörterbuch (Code). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:segmentfault.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