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)
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
.128013bqO,9vià3o_x;jlpwf( g0]6-)2s»18ené4è[m5tLRPhk:c.a=rySIu/7d«050*0G0O0X0h0p0C0u0V0p0X0C0C0Y010O0h0q010406050C0%0M0M0X0Z0!040#0k0p0%0 0k0H0u020X0M0q0n0u0Q0G190Z0c0%0G0C050(16181a1c140q04051H1A1K0(1H140*0h0g0@0_0{0}0S0h0v0S0p1Y0S0O12050/0b0p0G1T0`0|011X1Z1#1Z0O1+1-1)0O0Z1I0O0S0@1f0C0q0X0H0}0B011/1V010s0;0G0H1n0G1)25272c1;2f1-2i0M2k040a0u0R0Z0k0q0k0C0h1i1k0-230Z0Z0G0V2F1A2m0H1I0(212R1~201 1*0*2o0}1#0H2h2C1)1Q1S0^1:2#0h2%0H0k2+1)0q2K1I2P2R2|15261k2-2d2=0Z190p120u0E2O30132 2n321;3436380B3b273d2P2!013i0X37040u0j3m2Q143p3g0}3s3u0u0J3y3o303q3E380N3I3A3K3C3r0k353t380y3P3e311U3h3U3j3v0)3Z3B3$3D3(3W3v0F3,3R3.3T3V3F0f3@3f3_3M040E0w3I1L2`1A2+2U0*202Z3S0V2?2u0,1R1I2_0G2{3c454f0-4n3 2.010T120-0s453-4u0r384A3^4u0H0s120O2A0l1#0T1y4F4t2d11040t4R3#4H124O4Q1B4o4B4T120A0U3P0u4/0u3!3L12190m0l0q0C0G0%0*0k3I4;4)1;0k120Y514=3S0C2a04021w0k0O0n5e0%5g0n4.4:59404@0X4_4#1z4%3n524G2d5504575w2Q5y4S54120z4X3q0M0h123a5E134:5G4Y2d4w040s3U58533D124{4}4 5#5z544D042:5,5H5%045u5L3S4U4-5R065T5T5p4u5X0h4z5R5U4?5^0h4P5v2~5$014U0L5`5q045)4~505R624*040x5=5V5I5d0v5h6u694^4N6b4$6e5-0}5|5n60606q3h5r4_6m5+676N0}5B5D2|683S0H5(4|6n6K6L5o6f6#046C5_6T6f6W6A6!4!6E6d4(6H6g126i6p6,6$5*6o6G5?6~6s6)616f5X0G1#666Y6U3r6_6c6j4u6h7m33736(716}4U6t6;6}6W6X3c6Z6k6/6`6@3_0k5/270*7G4Z6l6%6S7h6=12020p6z7x776-6C6R756|776J5~6*6M726.5s4`7P7$5x7i6?7X6v5@7#6)7i5X2K0O0%0Z0H7M6r4W7t7Y6P7:747p1;4U0e856O7.5t7F887`780A3Z0(4q4m468t0(491A0O4b8y2X2S0X1,8v491G4s8n2K0M0l0s0X4P0l0S0j121s1u1w1y0u5}2~1N3d1H0$0p0u0C000X0v2E0u0*000%2%0u2K0V0S0G0Z8{1.2H4^0h0M170W0u0d1k2:2E0h3t0h4|0u1-0u7#0u0X0!270O9g1.0q1g0?2H0+4;1t6a4P1A9x0u0D0u0i4;8s0401011A9H0u0.9g0X0u0g1a9c8F9G4g8j6D7l8r9X9E9W4r0z5Q9H96989i2K0H2Z0C0k2:8;0K0?0_9/1t0h0K2K0u2E0I0Z0X2F8;1.9|0b0k0%0^901.8L9r0X0V8}0@8Y9S1-820?260Zam0p9h1:0k0V0h0I8Y0X0%9}5Nal9j4f0H0O2haE0*279{900h2M0h1j2i0h2K0W1L8%040P3U9taEas4faqa89i7;0C0e0u1j231o1aa91.2=0M0ba19u9w0M9y0G9Ab39C9k0{ayaA9%9|ao4}ataJ4|0Z0gaB0u0o0%0C1w009F192:aL2iaK960#0h9Nav1.1y9o9rbpa21o3U0/aK1.a@2t9o9F0oac0ZbzbB1-0?a}a 8Yb1059x4#b63v9D9?aK0u0I0vaD0ma=a@8^bQ9%bT820u8X8+bX00a@9QaD0{bB059H9j7U5h0u7!7;9L9XaZ8$148w0.0:0=04.
# Tests
(insensible à la casse)(Ctrl+I)
(Alt+: ; Ctrl pour inverser les colonnes)
(Esc)