Conversion booléen/binaire

On considère dans cet exercice une représentation binaire d’un entier non signé en tant que tableau de booléens.

Par exemple tab = [True, False, True, False, False, True, True] représente \(2^6 +2^4 + 2^1 + 2^0 = 83\).

Cette représentation consistant à placer en premier le booléen indiquant la puissance la plus élevée de 2 est dite big-endian ou grand-boutiste.

Écrire une fonction gb_vers_entier qui prend en paramètre un tel tableau et renvoie l’entier qu’il représente.

Exemple

Python Console Session
>>> gb_vers_entier([])
0
>>> gb_vers_entier([True])
1
>>> gb_vers_entier([True, False, True, False, False, True, True])
83
>>> gb_vers_entier([True, False, False, False, False, False, True, False])
130
Compléter ci-dessous

###(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 : 5/5

.1280136*ra3 =+pcgvu5l:tShf(0[/ms1_i2n]owke)y4dPb-050O0K0r0e0D0p0A0g0k0p0e0A0A0h010r0D0j010406050A0n0z0z0e0d0M040s0H0p0n0,0H0F050y0?0^0`0|0;0j04051c151f0y1c0;0O0D0m0!0$0(0*0$0F0l0n0e0l0K0R0j0M0r0t130g0t0D0l0t0p1H0t0r0/050V0Q0p0K1o0%0)011G1I1K1I0r1Q1S1O0r0d1d1C0!0 0A0j0e0F0*0E011U1q010u0X0K0F0e0z0K1O1:1=1`1W1}1S20220/0a0g0P0d0H0j0H0A0D120F0g0T1.0d0d0K0k2n15250F1d0y1C2A1*1,1+1P0O271r0D0F1 2k1O1l1n0#1V2K2M0F0H2Q1O0j2t1d2y2A2%0=1;2o2S1{2W0d0_0p1O0e1F2t0u0*030C0C0k2X0K1K2V0H0R0B350/0B150e2(2+0:2*262-1W2/2;2?2^0K2`012|2~30322N350R1^040E3a3c1=3e2y2J013j0e2=1d2@0t2_2{2}2 0T3t2W3v0f0/0f3A2x3d0;3E3h0*3H3J053L3N3p3P3s2L3u360N0/0N3Y163!3f2,1p3i0H2:3I3l3M3n3O3r3R3;3T360o0/0o3`2%3#2+3F3)443-3q3Q314a34360b0/0b4g3d1g2#152Q2D0O1,2I3%014p2P1m1d2!0K2$4y3{3C054p4P260D0O0*2}2y3v0B3l4X4Z484q334$1_2b0K4*4p3S4s372A3b3}3F0J0/0T0u3Z4S3$3 0*0I0/0g522z4|4H0F0u0/0l0Q0C0m0K0d0A0C1 0,5l5a4V3~2T010.040v5s5c553G0/1Q5A545v5x0L0q5s0;4R5b3E4)014!2+3v3x3+0g5R3/494-361^0g4:4=3:5$3w1O0y3b0g5=595H2.0/0A0H0^0K5s5@4j4H0H0/0h5 5B5v0z0D0/0w5M5G4j5Z0C4#363V3K5Y4Y5S4+4@3U4/214;6o4?4r6r4`045?603g5C4~040u41665^3i0/0D6J615C0H57042L6O6D5v0F0Q0/0d1=1x6e6W1{5x5z5O5t4k6Z042a6(5u6*0/6,2)6K3(5E0e0Q6?3F5J5K6d6-4|6g6i0R3@6l6g6w5-3@5)6t5+5#3=7a5/5;6B5?671{6F0D516-6C6@6L045F766|5w0/0x715d6M7H5C5x0G5L6-5N6{6f6n5T1=3v4d7c7T6p6x4c6s227j4,7l7X3A7p7.7x4k5`5|226V7y0*6304657w7r7z5{5}7^3F7{0i834H690/3z7~7D7{0c0c877L6_7K6X6:6=7C6P5I8j8o6)7z7B7R8t0*5J8h5v7{0R8A1{8904398c8p1{8C8E7z6N8s7_7E040L758w2o785U4t4(7Z7e7l4u7h7(6v5,8(7n6A7q7D6F2t0r0n0d148J8x5D04817@7P5A0y4U4z4O4B4L150r4E9a2G2B6 1S2A4C5N0T0V0X0A04.