Heim > Backend-Entwicklung > Python-Tutorial > Vergleich von Effizienzbeispielen für das Zusammenführen zweier Wörterbücher in Python

Vergleich von Effizienzbeispielen für das Zusammenführen zweier Wörterbücher in Python

伊谢尔伦
Freigeben: 2017-06-28 13:38:21
Original
1599 Leute haben es durchsucht

In diesem Artikel werden hauptsächlich die gängigen Methoden und der Effizienzvergleich von Python zum Zusammenführen zweier Wörterbücher vorgestellt. Er analysiert und vergleicht die gängigen Methoden zum Zusammenführen von Wörterbüchern in Python anhand von Beispielen

Das Beispiel in diesem Artikel beschreibt die gängigen Methoden und den Effizienzvergleich beim Zusammenführen zweier Wörterbücher in Python. Teilen Sie es als Referenz mit allen. Die spezifische Analyse lautet wie folgt:

Der folgende Code veranschaulicht 5 Methoden zum Zusammenführen von zwei Wörterbüchern und führt einen einfachen Leistungstest durch

#!/usr/bin/python 
import time 
def f1(d1, d2): 
  return dict(d1, **d2) 
def f2(d1, d2): 
  return dict(d1.items() + d2.items()) 
def f3(d1, d2): 
  d = d1.copy() 
  d.update(d2) 
  return d 
def f4(d1, d2): 
  d1.update(d2) 
  return d1 
def f5(d1, d2): 
  d = dict(d1) 
  d.update(d2) 
  return d 
def f6(d1, d2): 
  return (lambda a, b: (lambda a_copy: a_copy.update(b) or a_copy)(a.copy()))(d1, d2) 
def f7(d1, d2): 
  d = {} 
  d.update(d1) 
  d.update(d2) 
  return d 
def t(f, n): 
  st = time.time() 
  for i in range(1000000): 
    dic1 = {'a':'AA','b':'BB','c':'CC'} 
    dic2 = {'A':'aa','B':'bb','C':'cc'} 
    f(dic1, dic2) 
  et = time.time() 
  print '%s cost:%s'%(n, et-st) 
t(f1, 'f1') 
t(f2, 'f2') 
t(f3, 'f3') 
t(f4, 'f4') 
t(f5, 'f5') 
t(f6, 'f6') 
t(f7, 'f7')
Nach dem Login kopieren
Abgesehen davon, dass die f4-Methode das Wörterbuch d1 beschädigt Zusätzlich zur sexuellen Modifikation geben mehrere andere Methoden das zusammengeführte Ergebnis als neues Wörterbuch zurück.

Das Folgende sind die Testergebnisse:

f1 cost:2.382999897 
f2 cost:4.45399999619 
f3 cost:3.02100014687 
f4 cost:1.73000001907 
f5 cost:2.3710000515 
f6 cost:2.89700007439 
f7 cost:2.35600018501
Nach dem Login kopieren
Es ist ersichtlich, dass f4 am effizientesten ist. Wenn Sie das Originalwörterbuch nicht beibehalten müssen, wird empfohlen, das zu verwenden f4-Methode.

Das obige ist der detaillierte Inhalt vonVergleich von Effizienzbeispielen für das Zusammenführen zweier Wörterbücher in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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