Ds dictionnairesg2 22 23
On donne deux dictionnaires Reg et Dep, le premier a pour clés les noms des régions françaises et a pour valeurs la liste des noms des départements qui font parti de chaque région et le deuxième a pour clés un nom de département et pour valeurs les numéros des départements.
Question 1
Donner une instruction qui retourne le nombre de régions.
len(Reg)
Question 2
Donner une instruction qui retourne les noms des départements de la région "Grand Est".
Reg["Grand Est"]
Question 3
Faire une fonction nombre_dep(R) qui, appliquée à un nom de région R retourne le nombre de départements de la région R.
def nombre_dep(R):
return len(Reg[R])
Question 4
Faire une fonction depmax(Reg) qui retourne le nom de la région qui a le plus de départements.
def depmax(Reg):
Rmax=''
nbremax=0
for R in Reg.keys():
nbred=nombre_dep(R)
if nbred>nbremax:
Rmax=R
nbremax=nbred
Question 5
Faire une fonction region_de(D) qui à partir d'un nom de département D retourne le nom de la région à laquelle il appartient.
def region_de(D):
for R in Reg.keys():
if D in Reg[R]:
return R
Question 6
Faire une fonction numdepregion(R) qui prend en argument une région Ret retourne la liste des numéros de ses départements.
def numdepregion(R):
L=[]
for e in Reg[R]:
L.append(Dep[e])
Question 7
Faire une fonction region_denum(D) qui a un numéro de département D associe la région.
def region_denum(D):
Depinv={Dep[e]:e for e in Dep}
for R in Reg.keys():
if Depinv[D] in Reg[R]:
return R
Question 8
Faire une fonction memereg(D1,D2) qui prend en arguments deux noms de départements et qui retourne True si les deux département sont dans la même région et False sinon.
def memereg(D1,D2):
for R in Reg.keys():
if D1 in Reg[R] and D2 in Reg[R]:
return True
return False
def memereg(D1,D2):
return region_de(D1)==region_de(D2)