Explication détaillée de l'utilisation du dictionnaire Python (avec exemples)

不言
Libérer: 2018-10-09 15:55:00
avant
3140 Les gens l'ont consulté

Cet article vous apporte une explication détaillée de l'utilisation du dictionnaire Python (avec des exemples). Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.

Le dictionnaire est exprimé sous la forme : {clé:valeur}, avec des deux-points séparant les clés et les valeurs, et entre chaque paire clé-valeur Séparez par virgules, telles que {'name':'Superman','age':500} Veuillez noter que le type de clé doit être un type immuable. Python effectue une opération de fonction de hachage sur la clé et détermine l'adresse de stockage de la valeur. en fonction du résultat du calcul, le dictionnaire est donc stocké de manière non ordonnée. L'ajout, la suppression et la modification du dictionnaire sont les suivants :

Ajouter

Le dictionnaire peut être modifié par affectation directe Lorsque la clé spécifiée n'existe pas, on peut la modifier. sera ajouté à la fin. Paires clé-valeur

dic = {'name':'刘先生','age':'39','job':'工程师','marr':'已婚'}
dic['age'] = 20
dic['lover'] = '小昭'
print(dic)
输出:
{'name': '刘先生', 'age': 20, 'job': '工程师', 'marr': '已婚', 'lover': '小昭'}
Copier après la connexion

Vous pouvez également utiliser la méthode setdefaultv(key,value) pour ajouter des paires clé-valeur
Si la clé existe, aucune modification ne sera effectuée. made. Si la clé n'existe pas, elle sera ajoutée à la fin. Nouvelle valeur de clé, et si aucune valeur n'est donnée, elle est par défaut Aucune
En une phrase, "s'il y en a une, ignorez-la, sinon , ajoutez-le", qui peut être utilisé dans la boucle

dic = {'name':'刘先生','age':'39','job':'工程师','marr':'已婚'}
dic.setdefault('name','超人')
dic.setdefault('lover','小姐姐')
print(dic)
输出:
{'name': '刘先生', 'age': '39', 'job': '工程师', 'marr': '已婚', 'lover': '小姐姐'}
Copier après la connexion

Delete: pop() clear del

pop Supprimer la valeur correspondant à la clé spécifiée et renvoie la valeur supprimée. Si la clé n'existe pas, une erreur sera signalée.

dic = {'name':'刘先生','age':'39','job':'工程师','marr':'已婚'}
res = dic.pop('name')
print(dic,'返回值:',res)
输出:
{'age': '39', 'job': '工程师', 'marr': '已婚'} 返回值: 刘先生
Copier après la connexion

Lors de l'utilisation de pop(), vous pouvez également ajouter un paramètre pour spécifier la valeur de retour. Si la clé donnée n'existe pas, la valeur de retour donnée sera renvoyée. Cette méthode est très simple à utiliser. et peut empêcher Si la clé n'existe pas, une erreur sera signalée. Si elle existe, elle sera supprimée. Si elle n'existe pas, la chaîne spécifiée sera renvoyée.

dic = {'name':'刘先生','age':'39','job':'工程师','marr':'已婚'}
res = dic.pop('小三儿','查无此人')
print('返回值:',res)
输出:
返回值: 查无此人
Copier après la connexion

clear est utilisé pour effacer le dictionnaire.

dic = {'name':'刘先生','age':'39','job':'工程师','marr':'已婚'}
dic.clear()
print(dic)
输出:
{}
Copier après la connexion

del est utilisé pour supprimer la valeur de clé spécifiée. Si seul le nom du dictionnaire est donné, l'objet dictionnaire entier sera supprimé

dic = {'name':'刘先生','age':'39','job':'工程师','marr':'已婚'}
del dic['name']
#del dic
print(dic)
输出:
{'age': '39', 'job': '工程师', 'marr': '已婚'}
Copier après la connexion

. Changer : Voir "augmenter"

Vérifier :

Vous pouvez directement préciser la clé pour accéder au dictionnaire S'il y a une clé, la. la valeur correspondante sera renvoyée. Sinon, une erreur sera signalée :

dic = {'name':'刘先生','age':'39','job':'工程师','marr':'已婚'}
a = dic['name']
print(a)
输出:
刘先生
Copier après la connexion

Vous pouvez interroger toutes les clés, valeurs et paires clé-valeur via les trois méthodes du dictionnaire key(), values(), et items() respectivement.

dic = {'name':'刘先生','age':'39','job':'工程师','marr':'已婚'}
a = dic.keys()
b = dic.values()
c = dic.items()
print('keys():',a)
print('values():',b)
print('items():',c)
输出:
keys(): dict_keys(['name', 'age', 'job', 'marr'])
values(): dict_values(['刘先生', '39', '工程师', '已婚'])
items(): dict_items([('name', '刘先生'), ('age', '39'), ('job', '工程师'), ('marr', '已婚')])
Copier après la connexion

Vous pouvez également utiliser une boucle for pour parcourir ces trois méthodes afin d'obtenir les valeurs clés séparément.

dic = {'name':'刘先生','age':'39','job':'工程师','marr':'已婚'}
for k in dic.keys():
    print(k)
输出:
name
age
job
marr
Copier après la connexion
dic = {'name':'刘先生','age':'39','job':'工程师','marr':'已婚'}
for v in dic.values():
    print(v)
输出:
刘先生
39
工程师
已婚
Copier après la connexion
dic = {'name':'刘先生','age':'39','job':'工程师','marr':'已婚'}
for k,v in dic.items():
    print(k,v)
输出:
name 刘先生
age 39
job 工程师
marr 已婚
Copier après la connexion

Autres méthodes de dictionnaire

len(dict)
Calculer le nombre d'éléments du dictionnaire .
str(dict)
Convertit le dictionnaire en chaîne, par exemple :

dic = {'name':'刘先生','age':'39','job':'工程师','marr':'已婚'}
a = str(dic)
import re
res = re.search(r'name',a)
print(res)
输出:
<_sre.SRE_Match object; span=(2, 6), match=&#39;name&#39;>

因为把dic转化为字符串并赋值给a,所以可以对a进行正则匹配
而如果直接对dic进行正则匹配则报错,因为dic不是字符串类型。
Copier après la connexion

copy()
Renvoyer un dictionnaire Copie superficielle

dict.fromkeys(seq,'value')
Créer un dictionnaire avec les éléments de la séquence seq comme clés du dictionnaire et value comme valeur initiale . Si aucun paramètre n'est donné Si value est utilisé, la valeur correspondant à chaque clé est Non Remarque : Il s'agit d'une "méthode de classe", donc lorsque vous l'utilisez, ajoutez un dict.

seq = ['a',1,'b']
a = dict.fromkeys(seq,'value')
print(a)
输出:
{'a': 'value', 1: 'value', 'b': 'value'}
Copier après la connexion

. get(key, default=None)
Renvoie la valeur de la clé spécifiée, ou renvoie la valeur par défaut si la clé n'existe pas.

popitem()
Supprime et renvoie une paire clé-valeur du dictionnaire Si le dictionnaire est vide, une erreur sera signalée.

dic = {'name':'刘先生','age':'39','job':'工程师','marr':'已婚'}
res1 = dic.popitem()
res2 = dic.popitem()
res3 = dic.popitem()
print(res1,res2,res3,dic)
输出:
('marr', '已婚') ('job', '工程师') ('age', '39') {'name': '刘先生'}
Copier après la connexion

update([other])
Mettre à jour le dictionnaire avec des paires clé-valeur Si la clé existe déjà, la valeur correspondante sera remplacée. dictionnaire ou can Paires clé-valeur itérées, telles que :

dic = {'name':'刘先生','age':'39','job':'工程师','marr':'已婚'}
it = ((i,i**2) for i in range(1,4))
dic.update(it)
print(dic)
输出:
{'name': '刘先生', 'age': '39', 'job': '工程师', 'marr': '已婚', 1: 1, 2: 4, 3: 9}
也可以用下面的方式指定键对应的值,比如
dic.update(name = '李小姐',age = 22)
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:segmentfault.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!