Les deux configurations utilisant print(i, j)
et print(i)
renvoient le même résultat. Existe-t-il des cas où Devrait être utilisé par-dessus l’autre ou est-il correct de les utiliser indifféremment?
desc = {'city': 'Monowi', 'state': 'Nebraska', 'county':'Boyd', 'pop': 1}
for i, j in desc.items():
print(i, j)
for i in desc.items():
print(i)
for i, j in desc.items():
print(i, j)[1]
for i in desc.items():
print(i)[1]
Les deux sont différents si vous supprimez les parenthèses, car vous utilisez python 2X
desc = {'city': 'Monowi', 'state': 'Nebraska', 'county':'Boyd', 'pop': 1}
for i, j in desc.items():
print i, j
for i in desc.items():
print i
sortie
county Boyd
city Monowi
state Nebraska
pop 1
('county', 'Boyd')
('city', 'Monowi')
('state', 'Nebraska')
('pop', 1)
En Python 3, print(i, j)
et print(i)
ne pas renvoie le même résultat.
print(i, j)
affiche la clé i
suivie de sa valeur j
print(i)
imprime un tuple contenant la clé du dictionnaire suivie de sa valeur
items()
renvoie un objet de vue qui vous permet de parcourir les tuples (key, value)
. Donc, fondamentalement, vous pouvez simplement les manipuler comme si vous utilisiez des n-uplets. Le document peut aider:
iter (dictview) Renvoie un itérateur sur les clés, les valeurs ou les éléments (représentés par des nuplets> de (clé, valeur)) dans le dictionnaire.
De plus, je pense que print(i, j)[1]
entraînerait une erreur dans Python 3 puisque print(i, j)
renvoie None
.