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

.128013b]=wlSd[f-:*431(gnahp/+uerovm)6 2iycs_Ptk05050h0z0O0t0I0f0L0G0K0f0t0L0L0d010O0I0v010406050L0y0D0D0t0A0J040g0B0f0y0,0B0s050w0?0^0`0|0;0v04051c151f0w1c0;0h0I0C0!0$0(0*0$0s0r0y0t0r0z0k0v0J0O0u130G0u0I0r0u0f1H0u0O0/050V0b0f0z1o0%0)011G1I1K1I0O1Q1S1O0O0A1d1C0!0 0L0v0t0s0*0H011U1q010j0X0z0s0t0D0z1O1:1=1`1W1}1S20220/0a0G0N0A0B0v0B0L0I120s0G0T1.0A0A0z0K2n15250s1d0w1C2A1*1,1+1P0h271r0I0s1 2k1O1l1n0#1V2K2M0s0B2Q1O0v2t1d2y2A2%0=1;2o2S1{2W0A0_0f1O0t1F2t0j0*030M0M0K2X0z1K2V0B0k0p350/0p150t2(2+0:2*262-1W2/2;2?2^0z2`012|2~30322N350k1^040H3a3c1=3e2y2J013j0t2=1d2@0u2_2{2}2 0T3t2W3v0o0/0o3A2x3d0;3E3h0*3H3J053L3N3p3P3s2L3u360n0/0n3Y163!3f2,1p3i0B2:3I3l3M3n3O3r3R3;3T360R0/0R3`2%3#2+3F3)443-3q3Q314a34360F0/0F4g3d1g2#152Q2D0h1,2I3%014p2P1m1d2!0z2$4y3{3C054p4P260I0h0*2}2y3v0p3l4X4Z484q334$1_2b0z4*4p3S4s372A3b3}3F0P0/0T0j3Z4S3$3 0*0e0/0G522z4|4H0s0j0/0r0b0M0C0z0A0L0M1 0,5l5a4V3~2T010.040q5s5c553G0/1Q5A545v5x0E0l5s0;4R5b3E4)014!2+3v3x3+0G5R3/494-361^0G4:4=3:5$3w1O0w3b0G5=595H2.0/0L0B0^0z5s5@4j4H0B0/0d5 5B5v0D0I0/0Q5M5G4j5Z0M4#363V3K5Y4Y5S4+4@3U4/214;6o4?4r6r4`045?603g5C4~040j41665^3i0/0I6J615C0B57042L6O6D5v0s0b0/0A1=1x6e6W1{5x5z5O5t4k6Z042a6(5u6*0/6,2)6K3(5E0t0b6?3F5J5K6d6-4|6g6i0k3@6l6g6w5-3@5)6t5+5#3=7a5/5;6B5?671{6F0I516-6C6@6L045F766|5w0/0i715d6M7H5C5x0c5L6-5N6{6f6n5T1=3v4d7c7T6p6x4c6s227j4,7l7X3A7p7.7x4k5`5|226V7y0*6304657w7r7z5{5}7^3F7{0x834H690/3z7~7D7{0m0m877L6_7K6X6:6=7C6P5I8j8o6)7z7B7R8t0*5J8h5v7{0k8A1{8904398c8p1{8C8E7z6N8s7_7E040E758w2o785U4t4(7Z7e7l4u7h7(6v5,8(7n6A7q7D6F2t0O0y0A148J8x5D04817@7P5A0w4U4z4O4B4L150O4E9a2G2B6 1S2A4C5N0T0V0X0L04.