Ci-dessous se trouve la sortie du fichier:
apples:20
orange:100
Ci-dessous le code:
d = {}
with open('test1.txt') as f:
for line in f:
if ":" not in line:
continue
key, value = line.strip().split(":", 1)
d[key] = value
for k, v in d.iteritems():
if k == 'apples':
v = v.strip()
if v == 20:
print "Apples are equal to 20"
else:
print "Apples may have greater than or less than 20"
if k == 'orrange':
v = v.strip()
if v == 20:
print "orange are equal to 100"
else:
print "orange may have greater than or less than 100"
Dans le code ci-dessus, je suis écrit "si k == 'orrange':", mais son "orange" correspond au fichier de sortie.
Dans ce cas, je dois imprimer la clé orrange n’existe pas dans le fichier de sortie. Aidez-moi, s'il vous plaît. Comment faire ça
Utilisez le mot clé in
.
if 'apples' in d:
if d['apples'] == 20:
print('20 apples')
else:
print('Not 20 apples')
Si vous souhaitez obtenir la valeur uniquement si la clé existe (et éviter une exception si vous ne l'obtenez pas), vous pouvez utiliser la fonction get
d'un dictionnaire en transmettant une valeur par défaut facultative: le deuxième argument (si vous ne le passez pas, il retourne None
à la place):
if d.get('apples', 0) == 20:
print('20 apples.')
else:
print('Not 20 apples.')