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
.128013lS]et-d5f18»umaè«g,_/R=in
6)yàqPhcL[(bsx.p;r4j'90"ovw73Ok:é 2I030b08090j0s050H0$0C050j0H0H0r0S090s0K0S020u030H0h0i0i0j0M0x02060T050h0{0T0t0$000j0i0K0L0$0q08150M0z0h080H030p12141618100K02031D1w1G0p1D100b0s0U0:0=0@0_0B0s0m0B051U0B090~030+0G05081P0?0^0S1T1V1X1V091%1(1#090M1E090B0:1b0H0K0j0t0_0%0S1*1R0S0d0-080t1j081#2022271,2a1(2d0i2f02040$0A0M0T0K0T0H0s1e1g0)1~0M0M080C2A1w2h0t1E0p1|2M1_1{1`1$0b2j0_1X0t2c2x1#1M1O0;1+2W0s2Y0t0T2$1#0K2F1E2K2M2?11211g2'282,0M15050~0$0e2J2`0 2_2i2|1,2~30320%3522372K2V0S3c0j31020$0X3g2L103j3a0_3m3o0$0N3s3i2`3k3y320c3C3u3E3w3l0T2 3n320v3J382{1Q3b3O3d3p0W3T3v3W3x3Y3Q3p0f3$3L3'3N3P3z0Q3-393/3G020e0R3C1H2;1w2$2P0b1{2U3M0C2-2p0(1N1E2:082=363~480)4g3^2(0S0Z0~0)0d3C0$3U3F0d0~092v0o1X0Z1u3~3%4n0}020F4F3.4n0t0~4C4E1x4h4G284I0w0!3J0$4!4u4U3b0~150I0o0K0H080h0b0T4t4v3M0T0~0r4=4%0_0H2502001s0T090L510h530L4Z4#4?3_4(0j4*4Q1v4S3h4$4M284^024`5j2L5l4m5n0~0a4L5u1,0i0s0~345r0 4#5t3V4n4p020d3O4{5m4'024,4.4:5P5z0_0T0V0~2*5W5J2}4P0s4D5i2^4|0S4I4Y5F0u5H5H5c5K5#4s5F5I3F5)5+5y5'1,4I0E625 5S4-4/4;5F5_4V0~075%3k5o000m546i3M4O024)4B5*4R5-5Q0_5:5a5@5@6e5R6s5T6b6o3/5o5q2?5~6p0~6G5V5=6B6B6D3x5e5g6u5,366N6J4_6I4N606v4T6x5/0~666d5.6q6Q6c6w5X6.026h6S6T6V4o0~081X5|6M706q5h673M657a5d695U6^6,6`4I6}765.6K6L6#776X6t615}705Z0~220b6(5(7f6H7v7n0~00056n7F6-6q6F6a6R6_636y0~5;2?5?6T5^6=7s6@7B1,6K7%6W7D7Q367X4!705L2F090h0M0t7)6{4K6;7M7#7P7h3h704I0n7`7N5f7t6+825.4W3T0p4j4f3 8h0p421w09448m2S2N0j1'8j421C4l7S0S2F0i0o0d0j4D0o0B0X0~1o1q1s1u0$7V4h1J371D0'050$0H0P0j0m2z0$0b0P0h2Y0$2F0C0B080M8,1)2C4)0s0i130J0$0Y1g2*2z0s3n0s4-0$1(0$6@0$0j0x2209941)0K1c0/2C0l4u1p024Q1w9l0$0g0$0y4u8g020S0S1w9v0$0*940j0$0U16908t9u496r88798f9L9s9K4k0a5E9v8`8|962F0t2U0H0T2*8$0k0/0=9Z1p0s0k2F0$2z0#0M0j2A8$1)9,0G0T0h0;8;1)8A9f0j0C8.0:8N9G1(7@0/210Ma905951+0T0C0s0#8N0j0h9-5Ba897480t092car0b229+8;0s2H0s1f2d0s2F0J1H8S020D3O9haraf48ad9{96800H0n0$1f1~1k169|1)2,0i0G9;9i9k0i9m6u9oa=9q980@alan9R9,ab4.agaw4-0M0Uao0$0O0h0H1s0P9t152*ay2dax8`060s9Bai1)1u9c9fbb9=1k3O0+ax1)a%2o9c9t0O9 0Mblbn1(0/a,a.8Na:039l9n0p9p9r9%ax0$0#0maq0Ia#a%8)bC9RbF7@0$8M8WbJ0Pa%9Eaq0@bn039v977I540$7O7g9z9LaM8R108k0*0,0.02.
# Tests
(insensible à la casse)(Ctrl+I)