Affectations et listes
Un professeur veut relever ses notes
Un professeur a relevé la liste des notes obtenues dans un groupe à une évaluation. (liste_1).
Il désire relever toutes les notes d’1 point, mais il veut garder pour lui la liste originale.
Voici son script et le résultat obtenu à l’exécution :
Testez
liste_2 = liste_1
🌵 On observe que le professeur a « perdu » la liste originale liste_1, qui est devenu identique à la liste_2.
👉 En effet, tout se passe comme si l’instruction liste_2 = liste_1 donnait deux noms différents au même objet.
liste_2 n’est pas une nouvelle liste.
Il y a plusieurs syntaxes possibles pour remédier à ce problème : en voici quelques unes.
Testez
liste_2 = list(liste_1)
Testez
liste_2 = liste_1[:]
Testez
liste_2 = liste_1.copy()
Testez
liste_2 = [note for note in liste_1] avec une liste en compréhension
Un autre exemple avec des fruits :
🌵 Comme on peut le voir, lors de sa création, fruits_2 pointe vers le même objet de type list : fruits_1.
😏 Le fait de modifier fruits_2, modifie donc forcément fruits_1.
👉 Ce mécanisme est très important et il faudra le garder à l'esprit.
Exercice : Modification d'un tableau
On se donne un tableau, une valeur cible et une valeur de remplacement et il faut parcourir le tableau et remplacer la cible par la nouvelle valeur.
Écrire la fonction remplacer prenant en argument :
- une liste d'entiers
valeurs
- un entier
valeur_cible
- un entier
nouvelle_valeur
Cette fonction doit renvoyer une nouvelle liste contenant les mêmes valeurs que valeurs, dans le même ordre, sauf valeur_cible qui a été remplacée par nouvelle_valeur.
⚠️ La liste passée en paramètre ne doit pas être modifiée.
Exemples
>>> valeurs = [3, 8, 7]
>>> remplacer(valeurs, 3, 0)
[0, 8, 7]
>>> valeurs
[3, 8, 7]
>>> valeurs = [3, 8, 3, 5]
>>> remplacer(valeurs, 3, 0)
[0, 8, 0, 5]
>>> valeurs
[3, 8, 3, 5]
Compléter
.128073.128013.8217.127797à8qhi/Tn:vPes5!0k39jxbgr;._4cdfo)aSyt,é]R(U7w6 m-1CL2=[èpêAzl*Ou050H0p0O0L0i0:0q0Y0G0:0L0q0q0)010O0i0,010406050q0?0Z0Z0L0B0N040M0J0:0?170J0l0Y020L0Z0,0C0Y0S0p1h0B0g0?0p0q050j1e1g1i1k1c0,04051P1I1S0j1P1c0H0i0n0 111315110l0A0?0L0A0p0!0,0N0O0h1r0Y0h0i0A0h0:1{0h0O1a050`0z0:0p1#1214011`1|1~1|0O2426220O0B1Q1?0 1n0q0,0L0l150(01281%010I0|0p0l1v0p222q2s2x2a2A262D0Z2F040b0Y0o0B0J0,0J0q0i1q1s0^2o0B0B0p0G2!1I2H0l1Q0j1?2:2k2m2l230H2J1(0i0l2C2X221Y1!10292}2 0l0J33220,2)1Q2.2:3g1d2r1s352y390B1h0:220L1_2)0I15030E0E0G3a0p1~380J0!0(0!0#1a0#1I0L3h3k1b3j2I3m2a3o3q3s3u0p3w013y3A3C3E303H3H1a0(3N3P2s3R2.2|013W0L3r1Q3t0h3v3x3z3B0^3*393,0v1a0v3:2-3Q1c3@3U153`3|053~403$423)2~3+3I0F1a0F4b1J4d3S3l1$3V0J3p3{3Y3 3!413(444q463I0r1a0r4w3g4e3k3^4i4G4m3%433D4M3G3I0X1a0X4S4y4f4B4h4D3X3}3Z3#4!4p3F3,0V1a0V4-3=4U3T4:3_4=4F4@4H4_4o4L4|3I0f1a0f512/1T3e1I332?0H2m2{4g014#321Z1Q3d0p3f3Q4c3=054#5B2I0i0H153z2.3,3K4@5J5L4K4$5e3J2w2N0p5S4#454(5W2:3O4z3^0u1a0^0I5D5k4/36010W1a0Y5;5H4A5@0l0I1a2)1w110G0p0B5|5+5t19040T695?3n1a0n3{0p0?0B1H4x5E6g2a6c0P5|5{6r4h6i6k6m3A0i250p6f4V6b1a6u6p2/6w6H550l1a390?0n3D260E6j266m6G545@6c0K0m5|1c6L5}0Y5R015M3k3,2v5Q5K6;5T5$6@5X2E5!4{4r3-5)040Y776N6$6h042)1e0:0`0O6v6a550J1a0)7i6x016c0*0R6+6#1s6:6=2s473Y7x6|4%7A0Y5Y715d73487578795~2y5-040I4D7o6O5 1a3D1B2C7h6-7O3^0J5_042~7V7a3V6z6Z6n7v3^6c6*6-6,3i3@7C5N4s7B6`5c5U734t7G706{5#7E817M7N787j5@7R0i5:7%8h7b7Z2O0l7$3g7(5t7l040)7n8m7p6Q046Y6l0B6C6E7@6I047`4T7@7 6?4O827I854N0!4P882O8T6}8R8e8f8f8n7:7c1G0?7f0L8s5C7p8w0D8J6P1a0L0,0,2C0H8_6%1a6e6-8*6y046S6U0:6W8E6!957p6(7u9f4V8P7z4)8S8a728V4*8Y5Z9p7J9r220j3O8(7796017R3D0q6F9j7/157_9i7}9k830E800!4~6_8!8c9T6 8Z9v8U5%9U3:9B8)8B628-8/8;6q7W2y8@917b8|8~0l909J7P6s939^8+8p7#a29L1a0K9N8=9P5S9S5g9V9#8#0!5g9t9W5Vaf9)8g7p7R2)0O6m0l7.9 977d8.7gaa5E0j5G5l5A5n5x1I0O5qaL2_2;0L6E2:5o1O6.5t630E0I0L0u0p0E0h7L1A1C1E1G0Y8M5C1V3R333^0L0H0Z1r2Z0i1^0H2s1.0B1a1Oa^a`a|2!0!170O2i040.2g7#a~awa=aV0%3t1Y0I2A0GaB0Q0Y2$660O0Y0p0y670G0i66by0qbx1E000|0Ya!1p0Y5z9|2)0Y0q0J2~bu272 bO120Ya{bo0i670Y11b*0ibG272~a}6k0D9CbkaJ0na?0_0{0}3^0O1Gc00/2w2V2C15c58C4e1f1C1k0kc10p0/2-cb1M3R1P0UbY5J0Q271E0i0Y0nb(8r0Y0eb*001G3d2ZbFbxb+1e1Z2sc0a/1Ta?1Z3^1)1+1-1/1;1?1^2c1}1 21aW552L2C2E1a2R0M0G0B18bx0o1=1@bj3i5z5}3;5kaG7~9Q5N0v5(4k6/9Q8b4|d23Kalah7Ed92w5a4Jd73+de759D7R5/a65^5`dp609-640L668G2D8kdp6c949O9K3_7;8F6odEay7q6Jax4WdH6BbC8I9~7^dN8A9=8+996Va%9d68dU8K6)aD5=ac6{d174d47Cdi46d22vdb846}d_df4Zd|ddd;9z76aqdY97d%0q0E3/dXdF8w8z8t9D8Ce9d,6.9l0l0!d27Ld=d69q3Geq9Z9ue1d8epd 4I4n7DeAere47Ndm1a7Td(eh9,7,dO8v7+7-eddL0l0z62b19IdKdV6ddseY042MdBa1d)8`8D6A6nebe-040Kd+7{8Od06?d24tagezdj0!877HdceA87dgeEd@evf59y9A9BeK7,8leOe7dGe;7=eaece$8K0*ds1a0ie^7teV7)7meg3Q8ue:d%8H26e^a:52e}ade 8W9of3d^fRd{eFf48Xfb4`9wfe4P8%9*fG7XfpdIe@e/9204fvf:7bfyf@a004fAfmee7meRe:d!9bd$e=el5+enep0!4*f2fXfU9sf7fTfe9sf!gigagcap9Car9-au0Bc^fFeidQe?fs4ydUg9d29(3td?euga4~fWfdgJeC5bgefe9(e47|ab5Ie~7zd2aogGetf$gaakghgQg(gOdhgIgZfgc$f,ekfB8vg0g^557rdp0Z0i49e^6Kf~dLg 5hh2g15@h60450f`a7f|g7c fPgY0!0wfSg+d2hmgLg/hlg-fchshmdlgr0429679:6Mgx8,dvdx0EdzflgVdLdCfwf-6mdJhMe%h3gw7phb4ahedM04hV3=f+2yhb0te^a9g{5@effEh(9Dg}h!h+h8h/h*h0045ih!6th9h}4 fzhhd.7yeod90thngMibexamf40#ic4^g.g%ifhyfn7RhB0BhD76hFg@h4fC8xh=hE9g1af?ft55hYh{iy5thbi0iGf;h%iCfnhbhdiO2y6cf}fFgUaEaG1V5m0jaU1R041A3B0,b(0/0 270qc.c:0 0i0!0^130?0~0,0?b-0Yc0b.0/0!268^b^i)b|0|0qcO3455a_a{0la}1^2~7Tb41Rb6jkjmeobbbd0d0Yjy0dcNaV0a0Y0$3D3tbY0B0Q2W9|bZ0~0L0?bO2U250+2O0Pby1s3!0I0_j40JbN9HjOj*3B1gi?ct0:0c2~bG0B0?2+bi5{5Ge9eb0Y0)cue=6o5Gbu1rdzbx0^0?0y7G0J0Z0~bo0I0Q2)8rjPjR060Z0-2O0Y0J0z0x0_b?5F3ChQgz1Ik50l0cc1jO0Y0?bYg326b,b.ja1Wb_jgjsb8j{jo8wb55tjjkU1rba2ZbdbmbS1n1pj{3d2V2XcqjY2%2)j`1rjCi+0=3ljK270H1r0GkIbYjQ2k271~b.0Ycsk6cE0-l7l40Yl6bRktkv0OjXlc9H0B3t66g40Ykk0n0J0Nk=2r0Bb*3t7T0lk_0lkPcl04k*bT1o2!jSk:0qk=c.k=kJl8b-cLcv2$a-cA1^j-0,0:0+cLjQbL6mbybxcz2O1ebR2CbZ0B3B6mcKb*a.e9bWj|kzg@5GlJ6,i*a@kZb7jllPkWjq0,kTmebik%bc2P0.1pbRlNk-1^2W136DfKb^mb55cR1,1.1:c?cX1 2e202Gfnc(5Yc+0Yc-c/0,c;mGgv5Ec`4zc|1Qc~i89R6?0Fd3g#ih46m*dag*gMm/huf#9$f5d3e4fjdoh!7+5{h!dthGl*dw67e^dDhT5tejk3iJhWfnnc7=fJe#nag|dWiKg2j(9a9cg6i1a8fM2/i!d-gWhjeom*6^esm-3GnDigf83+nIilhvg%nIf)hFmWiRf 8xi33Ve*e,nue(n2gyhS9;dF9he|gCgXnCeBgdm=eBhrnPn@glg+m*eHfhgqngn(f/noh:g`o4iWiEg~h~h,n#iYh?8?1a0;nX97nT3Rn.nBm`f1nFnKm.ffn^m_m*fae0n|ffnRhzeMojfof_o72a7*fxolh)nYeZ1*nkn*hNe.iVdZh-nwome$g9m*f(orgmo$nJo)fVn{n?o%eIfihzdAh|8+ixnlf;iFo{f^i6o^c7fDoFnh8FnjfLi7nAd/m)gbidgIm*gg89o,gkozn?goo;f*oNe8k3o3o~f{o}oSdPeQodoFefp46Rnqd#6Xnt8Nonpb7zm*gFd5nGm`gKm;pf9YnNm^6}pNg;9*fj9GoRnzoT8Lp97wn/m`g!pPosnHajo+oAako.pUaopof*iwpsgApxfuhPoHpuhfoenUdLpCp1foo`q3nmf=q5p0pJo!p.m*hxo(oAhqpTn_hqp{qup!e6dFas0_avpDkAfrg7aFkzaHaT5xm9qM0@cPmcjtmf60kXjrqRk#jvk(2PlWk+lOj{0L6Ul3l9cLl`l)jK0h2C2Yk`b^1Pk}lil~cEjQmwbOjRk-l9b)q$q-27lB2o1wq;q?j{j$kJ5{1B042Vkj8:8Fj467dz2)1IricMmzqQmBb1mDcUmV1_mIc!mLdFmNc*2QmQi^mT2SmV69mY3i95m$pai98Wm+p;gm0r5Wov6}r!daqwm_r(g;m}3!dpn0ds61n465n7n#n9qgg?ndn#iQivePfIdSmyoVhfs0pqfokLg57=oXp,rYm(7zr!nEm,p=rWd`qtr+3-pWrZe3n s9qBgtoMh@o9n%kAoF8jhLofo1sDqd8w0siBs1sIs3mxp(sOqA7Y0}sSs98CsbpHsdqd7RoEqdp59eoIc7eTszs2r~s6h#q9oZa;i$mYi)qOs}b`m9jd0}04.
# Tests(insensible à la casse)(Ctrl+I)
(Alt+: ; Ctrl pour inverser les colonnes)
(Esc)