QCM bon départ Python

Memento Python

  1. Parmi les types suivants, lesquels sont mutables ?

    • int

    • tuple

    • list

    • str

    • dict

    Remarque .nurêàcs p(dtvoé:ilè,efb/.ymLPh)a050i040B0u0g0h0r0q0g0l0K0h0C0z0l0D0n0a0h0j0N0P0E0h0u0l0h0k0q0f0l0q0X0a0F0q0c0R0g0X0*0A0b0l0F0w0r0R0p0h0q0r0L0i0u0b0m0u0a0*0d0l0^0h0A0n0,0v0q0o0L0F0i0c0s0L0f0c0o0F0/0X0t0h0f0{0c0?0^0A1d0*0e151e1C0l0b0i120(0*0P0c0y050x0H.
  2. Que va afficher ce code ?
    a = [1, 2, 3]
    b = a
    b.append(4)
    print(a)
    

    • [1, 2, 3]

    • [4]

    • [1, 2, 3, 4]

    • Un message d'erreur

    Remarque .Mnurêc spdtvoé=i:leqfzb/.ma050i04050f0m0j0s040w0g0o0g0A050x0F0H040g0b0s0g0F0i0p0W0i0A0h0g0r0A0)0p0h0k0W0q0g0E0G0I0w0P0R0I0g0i0s0c0k0g0e0k0d0W0F0b0h0p0j0n0d0n0X0m0z0z0W0c0V0N10150g0n0k0p0t0c0s0k0/0}0m0p0b0k0A1B0g0l0s0d0(0*0g0z0e1i0g0v0m1l0z0n0z1z150y0g0a0G0p0u0!0d0=0{0J0`0@0T1V0j1$0!0g0j1R0f1m0h191*1.0O0Q1.0y0P0C.
  3. Que fait l'instruction a, b = b, a ?

    • Elle provoque une erreur

    • Elle affecte la même valeur à a et b

    • Elle échange les valeurs de a et b

  4. Que renvoie 39 // 10 ?

    • 3.9

    • 4

    • 3

    Remarque .nur9c s1p(d3tv0o:ilèeq/.)a050i04050e0p0k0u040w0w050w0E0G040f0u0g0m0f0s0z0f0k0r0n0r0g0r0p0a0Q0a0m0r0t0c0u0f0j0u0b0e0s0r0Y0u0a0a0u0y0f0q0U0:0v0b0p0,0|0T0G0U0W0Y0!0$0(0X0:0l0d0f0i0z0c0f0h0o0Q0S0f0l0x0L0B.
  5. Dans ce code, que se passe-t-il si test() renvoie True ?
    if test():
        faire_ceci()
    faire_cela()
    

    • Rien ne s'exécute

    • faire_ceci()s'exécute et faire_cela() s'exécute

    • Une erreur est levée

    • seulement faire_ceci() s'exécute

  6. Dans ce code, que se passe-t-il si test() renvoie True ?
    if test():
        faire_ceci()
    else:
        faire_cela()
    

    • Rien ne s'exécute

    • faire_ceci()s'exécute et faire_cela() s'exécute

    • seulement faire_ceci() s'exécute

  7. Que s'affiche-t-il si on exécute le code suivant :

    note = 18
    if note >= 16:
        print("Très bien")
    if note < 10:
        print("Refusé")
    else:
        print("Admis")
    

    • "Très bien" puis "Admis"

    • Seulement "Très bien"

    • Un message d'erreur

    Remarque .nur6c 1spdtv0oé=ilè,;eTfb/.gyAxmIha050i04050e0n0j0v040a0n0k0v0f020B0k0u0p0f0g0d050z0N0P040f0v0h0k0f0l0c0I0q0t0f0q0r0f0h000I0x0x0q0e0H0V010w0c0s0h0f0y0q0v0a010A0f060G0}0C0f0I0.0a0h0b0q0U0f0b0a0~0v0N0a0j0f0U0:0`0v0;0N0F0F0V0M0O0Q0S1w020r0Z0$0m0)0+0Q0.0:0f0x0I0b0E0`0|0~101214160f0o0B0I0r0v1N0a0;010D0j0F0q0h010)0K.
  8. Que s'affiche-t-il si on exécute le code suivant :

    note = 18
    if note >= 16:
        print("Très bien")
    elif note < 10:
        print("Refusé")
    else:
        print("Admis")
    

    • "Très bien" puis "Admis"

    • Seulement "Très bien"

    • Un message d'erreur

    Remarque .nur6c s1pdtvo=ilè;eTfb/.gmCha050i04050e0m0j0s040s0p0o0u050w0H0J040f0g0o0y0a0O0o0s0V0o0a0m0a0%0x0f0A0m0z0z0$0G0I0K0)0k0$020y0k0r0n0f0h0d0Q0S0K0f0s0g0k0f0l0c0C0o0f0o0p0V000C0u0u0o0e0B0$0g0s0b0p0s0=0a1b010t0c0q0g0f0v0#0a010Q0E.
  9. Que s'affiche-t-il si on exécute le code suivant :

    notes_1 = [10, 12, 18, 9]
    notes_1.sort()
    print(notes_1)
    notes_2 = [8, 15, 7]
    notes_2 = notes_2.sort()
    print(notes_2)
    

    • Un message d'erreur

    • [9, 10, 12, 18]
      None
      

    • [9, 10, 12, 18]
      [7, 8, 15]
      

    • None
      [7, 8, 15]
      

    Remarque .nràcs _p(dtvo2=ilef/.m)aN050h04050d0m0j0r040e0m0b0k0i0w050t0D0F040f0v0E0p0s0p0r0f0q0x0!0p0e0k0Z0r0a0f0h0#0d0+0k0f0b0,0l0m0Y0f0C0E0G0y0m0a0r0O0Q0G0u0}16040a0m0*0e0g0n0f0o0f1c1e1g0u0I0K0M150 0S0x0s0s0r0d0*0f0j120d191t11131s0R0f0c1F0R1l0r1f0n1J170O0A.
  10. Pourquoi faut-il éviter d'utiliser une liste comme valeur par défaut d'un paramètre de fonction ?

    • Cela ralentit fortement l'exécution

    • La liste par défaut est partagée entre tous les appels de la fonction

    • Python l'interdit et lève une erreur

    Remarque .nuràc _sp[(dvtoé:i=lè,eqfb/.gx]mL)aN050i040G0I0f0m0I0t0w0b0c0f0i0I0V0l0p0y0I0b0n0f0F0(0I0z0S0f0k0w0D0f0q0f050e0o0l0w040F0I0g0t0r0h0n0w0s0j0E050A0{0}040H0f0w150f0e0c0p0p0w0f0b0a1p0h0T0/0y0o141h0)0X0c0n0I0C1o1h0a0n0c1p0n0o0b0h0f0S1Q0I0i0i0w0t0h0v1k1p0x0b0r0W0c0o0m0o1%1p0}1Q0w0y0y0w0n1Q0}0f0z0o0c0l0f0r0a0I0n160a0l1P0B0f0N1}0o0a1s1*250r1/1h1j0l000(0r131u0V0`0|0~101214160s0J2f0w1b1d0~1k0o0F0F1p1C0I0F0u1K2N0Y0f0!0$0(1!0i1(1{1p1l1o0V0t0O2s160f0d1R00230n0p0c0r0T0Z1p2+0f1x0a0e0n0r2f0B1b0L.
  11. Que fait for element in d: pour un dictionnaire d ?

    • un parcours des valeurs de d

    • un parcours des clés de d

    • un parcours des couple (clé, valeur) de d

    Remarque .nurêc spk(dtvoéileqf/.ymLC)a050h040y0r0f0h0B0c0e0n0b0c0g0H0J0f0k0o0t0B0b0l0S000b0a0S0p0e0l0p0n0a0a0B0p0c0G0g0G0V0p0Y0I0c0f0e0q0o0v0f0z0r0q0B0f0;0m0p0r0a0Y0W0f0x0d0x0G0s0b0G050L0k0r040t0n0|140r1i1c0f0p0$0k0v0i0r0w0g0j0A050u1o1q1K0D.
  12. Comment parcourir uniquement les valeurs d'un dictionnaire d ?

    • for val in d.values():

    • for val in d:

    • for val in d.keys():

    • for val in d.items():

  13. Quelle instruction permet un parcours par tuples (clé, valeur) d'un dictionnaire d ?

    • for clé, val in d

    • for clé, val in d.items()

    • for clé in d.values():

    • for val, clé in d.keys()

  14. Que s'affiche-t-il si on exécute ce code ?
    x = 10
    
    def g():
        x = 99
    
    g()
    print(x)
    

    • 99

    • 10

    • Un message d'erreur

    • None

    Remarque .nur9c sp(dtvoéÀ=il,eqfb/.gxm)a050h040o0f0r000q0a0k0n0c0q0t0b0c0f0j0t0f050e0m0V040z0i0C050x0Z0#0s0I0K0a0g0k0c0b0e0k0q0m0a0X0,0t040A0f0p0f0d0d0*0 040f0e0c0n0W0b0a0W0l0D0P0D0w0r0W0r0m0e0D1o0~0!100A181w1a0u0b0q0f1h0f0B0!0q0v0Q0f0h0D0g0I0D0f1j1l1n0W0z1q0w1t0W0Y1A1y0+1A0y0*0F.
  15. Que permet le mot-clef global dans une fonction, et pourquoi faut-il êter prudent lorsqu'on l'utilise ?

    • Il crée une variable locale ; il est déconseillé car il ralentit le code

    • Il autorise la réaffectation d'une variable globale depuis une fonction. Cela rend le code difficile à déboguer.

    • Il supprime une variable globale. Il est déconseillé car il est obsolète

  16. Que s'affiche-t-il si on exécute ce code :

    nombres = [1, 2, 3, 4, 5, 6]
    resultats = [x for x in nombres if x % 2 == 0]
    print(resultats)
    

    • [1, 3, 5]

    • [2, 4, 6]

    • [1, 2, 3, 4, 5, 6]

    • Un message d'erreur

    Remarque .nurcs pdtvoé:ileqf/gmCha050g040v000p0e0i0f0b0a0p0f0d0k0u0g0c0l0w0p0a0e0n0k0a0f0h0J0o0n0E0J0x0j0p0d0f0r0n0o0i0c0J0m0f0W0f0I0f0t0x0c0Z0f0q0b0!0D0f0l0o0l0u0S0i0e0f0g0x0n0c0e050s0z.
  17. Que s'affiche-t-il si on exécute ce code :

    nombres = [i**2 for i in range(5)]`
    print(nombres)
    

    • [0, 1, 2, 3, 4]

    • [0, 1, 4, 9, 16]

    • [1, 4, 9, 16, 25]

    • [0, 1, 4, 9, 16, 25]

    Remarque .nuràc pdt0oéil,e4/.Pa050g040t0k0b0c0f050e0k0h0p040m050r0E0G040f0u0n0n0u0a0i0f0G0f0j0f0d0f0q0o0f0k0a0f0e0Q0e0b0n0p0C0M0H0J0L0F0H0P0b0,0u0c0c0l0s0K0w.
  18. Que s'affiche-t-il si on exécute ce code :

    def remplacer(nombres):
        nombres = [9, 9, 9]
    
    nombres = [1, 2, 3]
    remplacer(nombres)
    print(nombres)
    

    • [9, 9, 9]

    • [1, 2, 3]

    • None

    Remarque .nurêc spdtvoéÀil,eqfb/-.gyma050h040n0f0p000B0h0h0r0p0f0i0r0G0B0f0t0l0a0e0j0o0V0f050e0l0P040c0r0A0h0p0B0e0r0c050v0%0)0q0f0o0N0S0m0j0m0f0e0c0m120b0a0Q0k0B0c0o0B0u0p0Q0p0l0e0B1h0#0_0r040a0l0A0u0+0g0@1p040f0B0z0B0a0j0G0Q0A0d0A0Q1s0A0f0s0b1i0S1b1d1f1n0y1j0u1m0Q0$0(1q1N1v0r1x0^1(040{0A0B0o0g130M1h0w0e0o0f0a0I0f0h0B1^10120A0(0o0t0o0m0r0x0@0D.
  19. Comment ajouter le couple clé-valeur "âge": 30 dans le dictionnaire dico = {"nom": "Alice"} ?

    • dico.append("âge", 30)

    • dico["âge"] = 30

    • dico.add("âge": 30)

    • dico + {"âge": 30}

  20. Comment supprimer le couple clé-valeur associé à "nom" dans le dictionnaire dico = {"nom": "Alice", "âge": 30} ?

    • dico.remove("nom")

    • del dico["nom"]

    • dico["nom"] = None

    • dico.pop()