Heim  >  Artikel  >  Backend-Entwicklung  >  Detaillierte Erläuterung verschiedener Methoden von Wörterbüchern in Python

Detaillierte Erläuterung verschiedener Methoden von Wörterbüchern in Python

高洛峰
高洛峰Original
2017-03-08 11:14:142161Durchsuche

Wörterbuch erstellen

>>> phonebook={'Alice':'2897','Alan':'0987','Jery':'6754'}

Diktfunktion

>>> items=[('name','Gumby'),('age',42)]
>>> d=dict(items)
>>> d
{'age': 42, 'name': 'Gumby'}
>>> d['name']
'Gumby'
>>> d=dict(name='July',age=24)
>>> d
{'age': 24, 'name': 'July'}

Grundlegende Wörterbuchoperationen (meistens ähnlich wie Sequenzen)

len(d) gibt das Element in d zurück Nummer of (Schlüssel-Wert-Paare)

d[k] gibt den mit Schlüssel k verknüpften Wert zurück

d[k]=v ordnet den Wert v k zu

del d[ k] Löschen Sie das Element mit der Taste k

k in d. Überprüfen Sie, ob ein Element mit der Taste k in d vorhanden ist.

Formatzeichenfolge

>>> phonebook
{'Jery': '6754', 'Alice': '2897', 'Alan': '0987'}
>>> "Alan's phone number is %(Alan)s." % phonebook
"Alan's phone number is 0987."

Methoden:

clear löscht alle Elemente im Wörterbuch

>>> d={}
>>> d['name']='Gumby'
>>> d['age']=42
>>> d
{'age': 42, 'name': 'Gumby'}
>>> d.clear()
>>> d
{}

>>> x={}
>>> y=x #x和y对应同一个字典
>>> x['key']='value'
>>> y
{'key': 'value'}
>>> x={} #x关联到新的空字典
>>> y
{'key': 'value'}

>>> x={}
>>> y=x
>>> x['key']='value'
>>> y
{'key': 'value'}
>>> x.clear()
>>> y
{}

copy gibt ein neues Wörterbuch mit denselben Schlüssel-Wert-Paaren zurück (flache Kopie)

>>> x={'name':'admin','machines':['foo','bar','bax']}
>>> y=x.copy()
>>> y['name']='yhk' #替换值,原字典不受影响
>>> y['machines'].remove('bar') #修改了某个值(原地修改不是替换),原字典会改变
>>> y
{'name': 'yhk', 'machines': ['foo', 'bax']}
>>> x
{'name': 'admin', 'machines': ['foo', 'bax']}

deepcopy Tiefe Kopie

>>> from copy import deepcopy
>>> d={}
>>> d['name']=['Aly','Bob']
>>> c=d.copy()
>>> e=deepcopy(d)
>>> d['name'].append('Ageal')
>>> c
{'name': ['Aly', 'Bob', 'Ageal']}
>>> e
{'name': ['Aly', 'Bob']}

fromkeys Verwenden Sie den angegebenen Schlüssel, um ein neues Wörterbuch zu erstellen. Der entsprechende Standardwert jedes Schlüssels ist none

>>> {}.fromkeys(['name','age'])
{'age': None, 'name': None}
>>> dict.fromkeys(['name','age'])
{'age': None, 'name': None}
>>> dict.fromkeys(['name','age'],'(unknown)')
{'age': '(unknown)', 'name': '(unknown)'}

get access dictionary item

>>> d={}
>>> print d['name']

Traceback (most recent call last):
  File "<pyshell#60>", line 1, in <module>
    print d[&#39;name&#39;]
KeyError: &#39;name&#39;
>>> print d.get(&#39;name&#39;)
None
>>> d.get(&#39;name&#39;,&#39;N/A&#39;)
&#39;N/A&#39;
>>> d[&#39;name&#39;]=&#39;Eric&#39;
>>> d.get(&#39;name&#39;)
&#39;Eric&#39;

has_key checks ob es einen bestimmten Schlüssel im Wörterbuch gibt (Python3.0 hat diese Funktion nicht)

>>> d={}
>>> d.has_key(&#39;name&#39;)
False
>>> d[&#39;name&#39;]=&#39;Eric&#39;
>>> d.has_key(&#39;name&#39;)
True

items und iteritems

items listet alle Wörterbuchelemente auf Gibt jedes dieser Listenelemente von ( Schlüssel, Wert)

iteritems gibt ein Iteratorobjekt zurück

>>> d={&#39;title&#39;:&#39;My Time!&#39;,&#39;url&#39;:&#39;http://www,python.org&#39;,&#39;spam&#39;:0}
>>> d.items()
[(&#39;url&#39;, &#39;http://www,python.org&#39;), (&#39;spam&#39;, 0), (&#39;title&#39;, &#39;My Time!&#39;)]
>>> s=d.iteritems()
>>> s
<dictionary-itemiterator object at 0x0000000003068728>
>>> list(s)
[(&#39;url&#39;, &#39;http://www,python.org&#39;), (&#39;spam&#39;, 0), (&#39;title&#39;, &#39;My Time!&#39;)]

keys und iterkeys-Schlüssel konvertieren die Schlüssel im Wörterbuch in eine Liste. Rückgabeform iterkeys gibt einen Iterator über den Schlüssel zurück

pop entfernt

>>> d={&#39;x&#39;:1,&#39;y&#39;:2}
>>> d.pop(&#39;x&#39;)
>>> d
{&#39;y&#39;: 2}

popitem entfernt zufällige Elemente

>>> d={&#39;x&#39;:1,&#39;y&#39;:2}
>>> d.popitem()
(&#39;y&#39;, 2)
>>> d
{&#39;x&#39;: 1}

setdefault gibt den Standardwert zurück, wenn der Schlüssel nicht existiert, und aktualisiert das entsprechende Wörterbuch

>>> d={}
>>> d.setdefault(&#39;name&#39;,&#39;N/A&#39;)
&#39;N/A&#39;
>>> d
{&#39;name&#39;: &#39;N/A&#39;}
>>> d[&#39;name&#39;]=&#39;Gumby&#39;
>>> d.setdefault(&#39;name&#39;,&#39;N/A&#39;)
&#39;Gumby&#39;
>>> d
{&#39;name&#39;: &#39;Gumby&#39;}

update verwendet ein Wörterbuchelement, um ein anderes Wörterbuch zu aktualisieren

>>> d={&#39;x&#39;:1,&#39;y&#39;:2,&#39;z&#39;:3}
>>> f={&#39;y&#39;:5}
>>> d.update(f)
>>> d
{&#39;y&#39;: 5, &#39;x&#39;: 1, &#39;z&#39;: 3}

values ​​und itervalues ​​​​alues ​​​​gibt den Wert im Wörterbuch zurück (itervalues ​​​​gibt den Iterator des Werts zurück)

>>> d={}
>>> d[1]=1
>>> d[2]=2
>>> d[3]=3
>>> d.values()
[1, 2, 3]


Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung verschiedener Methoden von Wörterbüchern in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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