Ou exclusif entre deux listes

L'opérateur « ou exclusif » entre deux booléens a et b se note xor. a xor b est Vrai si les deux valeurs de a et de b sont distinctes et Faux sinon. Dans la suite de l'exercice nous représenterons Vrai par 1 et Faux par 0. Ainsi :

  • 0 xor 0 = 0
  • 0 xor 1 = 1
  • 1 xor 0 = 1
  • 1 xor 1 = 0

Exemples de listes de booléens :

liste_a = [1, 0, 1, 0, 1, 1, 0, 1]
liste_b = [0, 1, 1, 1, 0, 1, 0, 0]
liste_c = [1, 1, 0, 1]
liste_d = [0, 0, 1, 1]

Écrire la fonction ou_exclusif qui prend en paramètres deux listes non vides de même longueur constituées uniquement de 0 et de 1. Cette fonction renvoie une liste où l’élément situé à la position i est le résultat, par l’opérateur « ou exclusif », des éléments à la position i des listes passées en paramètres.

En considérant les quatre exemples ci-dessus, on obtient :

>>> ou_exclusif(liste_a, liste_b)
[1, 1, 0, 1, 1, 0, 0, 1]
>>> ou_exclusif(liste_c, liste_d)
[1, 1, 1, 0]

Contrainte

Vous ne devez pas utiliser l'opérateur ^de Python.

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 : 10/10

.128013,[snaRcPmy7!)f]4_wu2qAl3 (6ev08;é*xbokp/ihSg1t:5=.dr050Z0C0U0f0P0x0d0z0h0x0f0d0d0X010U0P0N010406050d0t0j0j0f0!0k040R0L0x0t0^0L0e0z020f0j0N0G0z0g0C120!0v0t0C0d050O0 1113150}0N041t1A051D0O1D1F1A0}0Z0P0D0-0/0;0?0Q0P0S0Q0x1T0Q0U0{050(0K0x0C1O0:0=011S1U1W1U0U1$1(1!0U0K0L0Z151#0!1B0U0Q0-180d0N0f0e0?0u011*1Q010o0*0C0e1g0C1!25272c1,2f1(2i0j2k040a0z0i0!0L0N0L0d0P1b1d0$230!0!0C0h2F1t2m0e1B0O212R0U1 1~200Z2o0?1W0e2h2C1!1L1N0.1+2#0P2%0e1{1M1!0N2K1B2P2R2|0~261d2-2d2=0!120x0{0T2O300|2 2n321,34360{0u3a273c2P2!013h0f37040y3l2Q0}3o3f0?3r3t0q3w3n303p3C0{0W3F3y3H3A3q0L353s0{0B3M3d311P3g3R3i040l3W3z3Z3B3#3T040F3F1C2`1t2+2U0Z2Y3p0h1{2u0#1M1B2_0C2{3b3;3}0$453e3+010M0{0$0o3;3*2.010s0{0z4i3O4c0e0o0{0L0t0r0C0J0.0t2D4h1u464j2d0`040A4p4b4k0e0{1W0d0U0C0r394E3m3X3p4I0b3F4o4G3g4P0P4R4T3k4W2Q4Y3P4I0n0V3M0z4`4%4q4N0{2K0 0x0(0U4$4;4c0L0{0X554(0?4I0c0p4_4{564k4e040o3R5b4}330{0P5p4M2d0L4m042:5u3Y4N0K4 270S0C4L5C4H0{4K4/4a5K3g5E042r5J4Z5M5V3P4O5T4+4S4U5Y4c4?4@5h4{5i5c4d5s4D2|4|5v4)5#4,5(5O5j5L040c5)4~5z63605g5O5^5Q0?58040m5a695 5`4Q5%4.2~5:5e665`5t5~6o0{0p4^5O065.6A5/5q5`500t520f546t6D6c0{0Y6q3B0{0f0N0N2h0Z6P014I5N6n6L010j0P386X4?5-6A6i0?5l0C0+5I6K5_5d0{6x2|6z6B6.5:5!6F6H6J6#6_016d6O6^6b3q6R6T6V6+5X7b3p6(0{0E7h040n6-6/5;042K0U0t0!0e5B3I4 1r6G533W0O48443=7J0O3^1t0U3`7O2W2S1`1|2U0f1%7L3^1z5P3p2K0j0r0o0f0M4T0Q0y0{1l1n1p1r0z6|461G3c1A0w1a2K0z0d181a0P1c0z2B0;0P7Y0z2h0z854Q270U8f1d1?0C0f0t7_4o7|1K1M3p1.1V1X1Z423?2~5~7I7$3P5l4g6X5y8r767c4s4u4w4y4A4C7o6!4F6$5!6k4T4V8M5W044#6h714*5|6m8W774?7`3m6~4`7s5!7z8*6$6d6g5@8_5S5U7j4=7i8$5Z8,5%8#8/7c6,6y5.8_7C517F8|778~7A95616X7l047n945*6v9o570{0I9y648{6}9g5:5l5n0!9C5r659l7c5x5s9E3b6a3I5S0!5G6@979w4J6X8`7o5,9f6 7s5l0P5?9T9h5{9a7o629v646s9!4k4I68905:6d6f9L6j5$4-9^9%5s7o6w6-6 9U987u7D74a99`9M9|9c8%a09;a259a50?9s9b8?9G6$5l7v7x9S3mag4r9i7E6I7G8E7K2R7!1E047 2V1)83192F882C2D8c8e8g4+8i8k1)8Z8d310L1h0!0H0Q2h2D876x1J402,4c8w1:1Y2^8B7{2~aN9H4f0C9:4X5:8K9%4t044v4x4z198Tam1,6Zaa9?8!7o8)a18X99a8bn6`7p8=3xaA77aC0%aEav6Y0{9_9}2d9s9ubvbF5=bJ8Ya75}bNbobLbqaobc6$9 bJ8~8 asbwbr0r8.b%8:b!bz7d9NbYbAaraG9-0{6=0d9Zb-77axbJ9I5o9O7Bb`c49P5y5Aca5Z9W9Y8U9%922hclb^bV5|ay4:6u7p0nb}3x1taN1G3?7M410}7M0%0)0+04.