Aller au contenu

Dictionnaire des antécédents

Un dictionnaire associe des valeurs à des clés, comme {"Paris": "P", "Lyon": "L", "Nantes": "N", "Lille": "L"} qui associe "P" à la clé "Paris".

Suivant les cas, une même valeur peut être associée à une ou plusieurs clés. Dans l'exemple précédent, la valeur "L" est associée aux clés "Lyon" et "Lille", on les appelle les antécédents de "L", tandis que "P" a la clé "Paris" pour seul et unique antécédent.

On peut ainsi construire le dictionnaire des antécédents {"P": ["Paris"], "L": ["Lyon", "Lille"], "N": ["Nantes"]}.

Vous devez écrire une fonction antecedents, de paramètre dico, qui renvoie le dictionnaire associant les valeurs de dico à la liste de leurs antécédents dans dico.

Notes

Puisqu'aucun ordre ne vous est imposé dans la construction des listes, une étape supplémentaire de tri est réalisée lors des tests de validation.

Par ailleurs, nous garantissons que le type utilisé autorise bien les valeurs à servir de clé.

Exemples
>>> antecedents({'a': 5, 'b': 7})
{5: ['a'], 7: ['b']}
>>> antecedents({'a': 5, 'b': 7, 'c': 5})
{5: ['a', 'c'], 7: ['b']}
>>> antecedents({"Paris": "P", "Lyon": "L", "Nantes": "N", "Lille": "L"})
{"P": ["Paris"], "L": ["Lyon", "Lille"], "N": ["Nantes"]}
###(Dés-)Active le code après la ligne # Tests (insensible à la casse)
(Ctrl+I)
Entrer ou sortir du mode "deux colonnes"
(Alt+: ; Ctrl pour inverser les colonnes)
Entrer ou sortir du mode "plein écran"
(Esc)
Tronquer ou non le feedback dans les terminaux (sortie standard & stacktrace / relancer le code pour appliquer)
Si activé, le texte copié dans le terminal est joint sur une seule ligne avant d'être copié dans le presse-papier
Évaluations restantes : 10/10
.65038.128013.9875s3_8èufvy n7aS1me(P24V:jtwi][h)6o;bcdg/làqp.r-,}=k{5Rxé050N0t0B0p0D0Q0d0m0M0Q0p0d0d0Z010B0D0T010406050d0i0s0s0p0V0l040q0J0Q0i0}0J0n0m020p0s0T0K0m0%0t170V0S0i0t0d050P1416181a120T041y1F051I0P1I1K1F120N0D0k0=0@0_0{0G0D0O0G0Q1Y0G0B10050-0L0Q0t1T0^0`011X1Z1#1Z0B1+1-1)0B0L0J0N1a1*0V1G0B0G0=1d0d0T0p0n0{0w011/1V010j0/0t0n1l0t1)2a2c2h1;2k1-2n0s2p040b0m0v0V0J0T0J0d0D1g1i0+280V0V0t0M2K1y2r0n1G0P262W0B2423250N2t0{1#0n2m2H1)1Q1S0?1:2*0D2,0n201R1)0T2P1G2U2W31132b1i2=2i2`0V170Q100r2T3511342s371;393b100w3f2c3h2U2)013m0p3c040e3q2V123t3k0{3w3y0x3B3s353u3H100$3K3D3M3F3v0J3a3x100I3R3i361U3l3W3n040o3#3E3(3G3*3Y040g3K1H2 1y2:2Z0N2%3u0M202z0*1R1G2~0t303g3_420+4a3j3:010!100+0j3_3/2?010C100m4n3T4h0n0j102c0B2Q0t0+0n0B1x1z4b4o2i0 040u4u4g4p0n4k0D424P3%4p4M0H0z3R0m4%4t4K3l4T420f4A4C4E4G3K4)4v4p0J100Z4?3$3u4M0#0Y4$4(4~3U4j040j3W4}4*3G100?0t4W4 100X5b4^38100k3x0t0i0V5l4Q2i0J4r042^5u4X5n041Q4V4I3r554h4`040U5h3U4S5z4B0s4H335c014M0u4!534(545W570D4m5H2V4@5v4+045p1-5s5B3u5x102`0B5^3U5`5z0n5~4w4,0J4.4F4:2m4=5,4f5C1;4M4#6c065$6k5%5m5:5F664/0M4D6a5U4J6n0{4M0F5O645;5q5@6c5J4Y100E634_4{6L4L106A6G5W5Q5f6B6I046K6i6l4%6H2i570t0:5g6S6x5X106h316j6#5$6%6o4U6q686s4;6v5I5W6z6W5D5=5r5t6-5/6y6J741;5L5N796e5d040p0T0T2m0N7d7b4N7q3v5e1-7t4Z5#5.7i4i102P0B5s626c7A3N65674B6~6u3#0P4d493`7T0P3}1y0B3 7Y2#2X1 212Z0p1,7V3}1E6d3u2P0s0f0j0p0!0t0f0G0e101q1s1u1w0m6;4b1L3h0G0r0m0D0N0{0d1d1f0D1h0W0d2c0d0W2J1r0d101c1e2K0m8l0n0;057S5R8q1y8B050p3u0G0t0p0+0V2+4j0m0G2P0j0{038f8u8i0n8k8m8o5S8r0m0}0B1-0{0v0t3X2_0B0m8O100c0a1y0p2W893h2:8I1$1^1%2q6.2v2m2o102B0q0M0V0~8=0v0l261h3_486d324b8F5(4k0t5+5V6.5y4t7h3N4y7k6}6t4F702V6_7r4O9z5P657x105!6!6m7a7u5E6{7M699F6O7e6N7I9I6/04517z9(575978317J9M046V9%5W605A9_6.5Q6p9O04853r6?6l9(5Q766F9;9(5L4|9}9T9 6{a16R9vag7v6,al7B4M6Z6=6@9-105*9!7ja99:3g9=5K5y5|ay019{7Hab6T7L6r9E6bap5ia27zauaM9V4-aO6 aj7ta86EaB716.araHadaH739L6C9^aR3Ua,9Ra69r046*0dao6w9T6gaU6#a7aN9Da!a;6Xakb17Ba%5?a)9H727cba5w107ga@6C7l7n0n7pbl6f109Kbp4Rana10H9,a|7E7GaHahaYb87P6i8E432W9m3|4612898b8d015p9e4/100y180D4/8G8I8K8M8@8Q8S8UbZb)682g8*8,018.8:6a8?2^578_8{8}0r3h1F0v0J5s0=0G0p82280i0T1-4t8B0u5f0X0maAbD7RbP8b0Q0m7^1f8)1w4B0V8?007+a 0n6s0m2M8AbPaAbO4ecJ8m8?1.5F2K2n0D2PcJ834A0)0M0)6 0m0p2k2L1.1e0Dc*0_0J0M0D8/8?8H1#0d4BckbP0F5f6Z8B8wc:4BcvcAcS0=0^co0,cZ281m0Q0)cBc`c0c}1.0t0(0Dc}4/c 4e6p9X7O9F0FaAd3ct2m8b0n0k0J1u4Adl0sdj0G43du49br7ocO49cQ8yda0M0^284F0V0.2P7g1O1J040y0J4Uc:0i2,cpb(dt1uc:2^2Jb)c|1.d=c.drc~0k8cdo8=2~c?0h2M0d0lc}0)170}822y4F0m0RcD0p0Aca8=cK8B9^8Bd*8 1R911@1$1(7:3U972x2z9b9d9f2C9idOaK4bbR336G9q6.574l7t9xa$9BaZbMbz6P7sbv7ja0e+9)9Qat9Sbeb77NaP9G04aD6M04aeaLa+109+a`e|6(109/bIbBe.4M5kafe?6Dbga-5y9|f0amaX0J7t7fa$aw8%a15Za33CaVeVaw9uaCb6fg77fi5{0J5}fe5_fjeP3rf56`bKe^b9e(bwaTf4fyfmdwe$9Zfb6QfrfEaabdaSasfC9`9$flaq6Qf.a4fYfff!bLf$fU7rbca*fmcNf%6Yfpbnf)dSbtfuf)a?f,a^9PbEfz04bG0VfN5-fDf|fSe%3g12cs4e7U2W7.3|0,0.0:04.