1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
| class Palmares(dict):
def __init__(self,file_):
with open(file_) as pal:
for p in pal.readlines():
p = p.strip()
if p.isnumeric():
annee = int(p)
self[annee] = []
else:
super().__getitem__(annee).append(p)
for annee in self:
self[annee] = dict(zip(super().__getitem__(annee),range(20,0,-1)))
def __getitem__(self,item):
if type(item) == int:
return super().__getitem__(item)
else:
return dict([(annee,ville[item])for annee,ville in self.items()if item in ville])
p = Palmares("monfichier")
print(p)
# {2000: {'Lyon': 19, 'Monaco': 20}, 2001: {'Lyon': 20, 'Marseille': 19}, 2002: {'Lyon': 17, 'Marseille': 16, 'Turin': 18, 'PSG': 20, 'Monaco': 19}}
print(p[2002])
# {'Lyon': 17, 'Marseille': 16, 'Turin': 18, 'PSG': 20, 'Monaco': 19}
print(p[2002]["Monaco"])
# 19
print(p["Monaco"])
# {2000: 20, 2002: 19}
print(p["Monaco"][2002])
# 19 |
Partager