Top-Likes !

Sur le réseau social TipTop, on s'intéresse au nombre de « like » des abonnés. Les données sont stockées dans un dictionnaire où les clés sont les pseudos et les valeurs correspondantes sont les nombres de « like » comme ci-dessous :

🐍 Script Python
{'Bob': 102, 'Ada': 201, 'Alice': 103, 'Tim': 50}

Écrire une fonction top_likes qui :

  • prend en paramètre un dictionnaire likes non-vide dont les clés sont des chaines de caractères et les valeurs associées des entiers positifs ou nuls,

  • renvoie un tuple dont :

    • la première valeur est la clé du dictionnaire associée à la valeur maximale ; en cas d'égalité sur plusieurs clés, on choisira la plus petite suivant un classement alphabétique,
    • la seconde valeur est la valeur maximale présente dans le dictionnaire.
Contraintes

On interdit ici d'utiliser max, min, ainsi que sort ou sorted.

Exemples
>>> top_likes({'Bob': 102, 'Ada': 201, 'Alice': 103, 'Tim': 50})
('Ada', 201)
>>> top_likes({'Alan': 222, 'Ada': 201, 'Eve': 222, 'Tim': 50})
('Alan', 222)
>>> top_likes({'David': 222, 'Ada': 201, 'Alan': 222, 'Tim': 50})
('Alan', 222)
>>> top_likes({'David': 0, 'Ada': 0, 'Alan': 0, 'Tim': 0})
('Ada', 0)
###(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
.12801342nygI )rPq-;joàèu5(,:éts]h07w8f/63pOv1x=«a_ckmLie»S9l[Rb.d050+0Y0y0R0X0$0z0h0T0$0R0z0z0P010y0X0K010406050z0s0V0V0R0j0e040!0p0$0s0 0p0d0h020R0V0K0n0h0(0Y190j0l0s0Y0z050H16181a1c140K041A1H051K0H1K1M1H140+0X0M0@0_0{0}0B0X0f0B0$1!0B0y12050/0)0$0Y1V0`0|011Z1#1%1#0y1-1/1+0y0)0p0+1c1,0j1I0y0B0@1f0z0K0R0d0}0c011;1X010G0;0Y0d1n0Y1+2c2e2j1?2m1/2p0V2r040a0h0k0j0p0K0p0z0X1i1k0-2a0j0j0Y0T2M1A2t0d1I0H282Y0y2625270+2v0}1%0d2o2J1+1S1U0^1=2,0X2.0d221T1+0K2R1I2W2Y33152d1k2@2k2|0j190$120h0N2V3713362u391?3b3d3f0c3i2e3k2W2+013p0R3e040h0J3t2X143w3n0}3z3B0h0b3F3v373x3L3f0t3P3H3R3J3y0p3c3A3f0I3W3l381W3o3#3q3C0D3*3I3-3K3/3%3C0F3?3Y3^3!3$3M0#3~3m403T040N0C3P1J311A2=2#0+2)3x0T222B0,1T1I300Y323j4c4l0-4t462^010U120-0G4c3@4A0E3f4G3 4A0d0G120y2H0S1%0U1y4L4z2k11040u4X3,4N124U4W1B4u4H4Z120i0w3W0h4^0h3+3S12190O0S0K0z0Y0s0+0p3P4`4/1?0p120P574{3Z0z2h0401014@4_5f474}0R4 4+1z4-3u584M2k5b045d5v2X5x4Y5a120m4%3x0V0X123h5D134_5F4(2k4C040G3#5e593K125153555!5y5a4J042`5+5G5$045t5K3Z4!4?5Q065S5S5o4A5W0X4F5Q5T4|5@0X4V5u355#014!0%5_5p045(54565Q614:040A5;5U5H04020f0y0n6t684~4T6a4,6d5,0}5{5m5 5 6p3o5q4 6l5*666O0}5A5C33673Z0d5%526m6L6M5n6e6$046D5^6U6e6X6B6#4*6F6c4.6I6f126h6o6-6%5)6n6H5=6 6r6*606e5W0Y1%656Z6V3y6`6b6i4A6g7n3a746)726~4!6s6=6~6X6Y3j6!6j6:6{6^400p5.2e0+7H4)6k6(6T7i6?12020$6z7N7r6/5r507Q766}786K5}6+6N737!6R7%7Y6v7B5w7j6.6S7(3u5~6,6~5W2R0y0s0j0d7?6J124$7u786.6D7|7q1?4!0v887k7:6E7m8c6u89040i3*0H4w4s4d8y0H4g1A0y4i8D2%2Z21232#0R1.8A4g1G4y8r012R0V0S0G0R4V0S0B0J121s1u1w1y0h5|351N3k1H0g0$0h0z000R0f2L0h0+000s2.0h2R0T0B0Y0j941:2O4~0X0V170*0h0L1k2`2L0X3A0X520h1/0h7|0h0R0e2e0y9p1:0K1g0?2O0Q4`1t694V1A9G0h0Z0h0q4`8x5j5l8w4m3C0.9p0R0h0M1a9l8N9P9U7F8p9Q9N9(4x0m5P9Q9f9h9r2R0d2*0z0p2`8}0r0?0_9^1t0X0r2R0h2L0x0j0R2M8}1:a2210s0^991:8U9A0R0T960@8+9!1/850?2d0jar0$9q1=0p0T0X0x8+0R0sa35Maq9s4l0d0y2oaJ0+2ea1990X2T0X1j2p0X2R0*1J8:040W3#9CaJax4lavae9r7%0z0v0h1j2a1o1aaf1:2|0V0)a79D9F0V9H0Y9Jb89L9t0{aDaF9-a2at53ayaO520j0MaG0h0o0s0z1w009O192`aQ2paP9f0!0X0h7f9q1y9x9Abua81o3#0/aP1:a|2A9x9O0o0p85bEbG1/0?b2b48+b6059G4+bb3C9M9|aP0h0x0faI0Oa`a|91bV9-bY850h8*8@b$00a|9YaI0{bG059Q9s7V6z0h8f7=9T4xa(8/148B0.0:0=04.