Title: Niveau 2
Course: Réaliser un montage audio

Q: Pour enlever la chaîne ”hello” de list1, quelle commande devons nous utiliser ?
- list1.remove(”hello”)
- list1.remove(hello)
- list1.removeAll(”hello”)
- list1.removeOne(”hello”)
A: list1.remove(”hello”)

Q: Si listExample correspond \(\left [ \right .\)3, 4, 5, 20, 5, 25, 1, 3\(\left . \right ]\), que vaut list1 après :

listExample.pop(1)
- \(\left [ \right .\)3, 5, 20, 5, 25, 1, 3\(\left . \right ]\).
- \(\left [ \right .\)3, 4, 5, 20, 5, 25, 1, 3\(\left . \right ]\).
- \(\left [ \right .\)1, 3, 3, 4, 5, 5, 20, 25\(\left . \right ]\).
- \(\left [ \right .\)1, 3, 4, 5, 20, 5, 25\(\left . \right ]\).
A: \(\left [ \right .\)3, 5, 20, 5, 25, 1, 3\(\left . \right ]\).
Feedback: pop() enlève l’élément à la position spécifiée.

Q: Quelle est la sortie quand le code suivant est exécuté ?

”Welcome to Python”.split()
- \(\left [ \right .\)”Welcome”, ”to”, ”Python”\(\left . \right ]\).
- \(\left ( \right .\)”Welcome”, ”to”, ”Python” \(\left . \right )\)
- \(\left { \right .\)”Welcome”, ”to”, ”Python”\(\left . \right }\)
- ”Welcome”, ”to”, ”Python”
A: \(\left [ \right .\)”Welcome”, ”to”, ”Python”\(\left . \right ]\).
Feedback: split() retourne les éléments dans une liste.

Q: Quelle est la sortie quand le code suivant est exécuté ?

list(”a#b#c#d”.split(’#’))
- \(\left[ ’a’, ’b’, ’c’, ’d’ \right]\).
- \(\left[ 'a b c d' \right]\)
- \(\left[ ’a\#b \#c\#d’ \right]\)
- \(\left[ ’abcd’ \right]\).
A: \(\left[ ’a’, ’b’, ’c’, ’d’ \right]\).

Q: Quelle est la sortie quand le code suivant est exécuté ?

myList = [1, 2, 3, 4, 5, 6]

for i in range(1, 6):

    myList[i - 1] = myList[i]

for i in range(0, 6):

    print(myList[i], end = ” ” )
- 2 3 4 5 6 6
- 2 3 4 5 6 1
- 6 1 2 3 4 5
- 1 1 2 3 4 5
A: 2 3 4 5 6 6

Q: Quelle est la sortie quand on exécute :

list(”hello”)
- \(\left [ \right .\)’h’, ’e’, ’l’, ’l’, ’o’\(\left . \right ]\).
- \(\left [ \right .\)’hello’\(\left . \right ]\).
- \(\left [ \right .\)’llo’\(\left . \right ]\).
- \(\left [ \right .\)’olleh’\(\left . \right ]\).
A: \(\left [ \right .\)’h’, ’e’, ’l’, ’l’, ’o’\(\left . \right ]\).

Q: Quelle est la sortie quand le code suivant est exécuté ?

def f(i, values = []):

    values.append(i)

    return values

f(1)

f(2)

v = f(3)

print(v)
- \(\left [ \right .\)1, 2, 3\(\left . \right ]\).
- \(\left [ \right .\)1\(\left . \right ]\) \(\left [ \right .\)2\(\left . \right ]\) \(\left [ \right .\)3\(\left . \right ]\).
- \(\left [ \right .\)1\(\left . \right ]\) \(\left [ \right .\)1, 2\(\left . \right ]\) \(\left [ \right .\)1, 2, 3\(\left . \right ]\).
- 1 2 3
A: \(\left [ \right .\)1, 2, 3\(\left . \right ]\).

Q: Quelle est la sortie quand le code suivant est exécuté ?

def addItem(listParam):

    listParam += [1]

mylist = [1, 2, 3, 4]

addItem(mylist)

print(len(mylist))
- 5
- 1
- 4
- 8
A: 5
Feedback: + ajoute l’élément à la liste.

Q: Quelle est la sortie quand le code suivant est exécuté ?

def increment_items(L, increment):

    i = 0

    while i < len(L):

        L[i] = L[i] + increment

        i = i + 1

values = [1, 2, 3]

print(increment_items(values, 2))

print(values)
- None puis \(\left [ \right .\)3, 4, 5\(\left . \right ]\).
- None puis \(\left [ \right .\)1, 2, 3\(\left . \right ]\).
- \(\left [ \right .\)3, 4, 5\(\left . \right ]\) puis \(\left [ \right .\)1, 2, 3\(\left . \right ]\).
- \(\left [ \right .\)3, 4, 5\(\left . \right ]\) puis None
A: None puis \(\left [ \right .\)3, 4, 5\(\left . \right ]\).

Q: Quelle est la sortie quand le code suivant est exécuté ?

a=[1,2,3]

b=a.append(4)

print(a)

print(b)
- \(\left [ \right .\)1, 2, 3, 4\(\left . \right ]\) puis None
- \(\left [ \right .\)1,2,3,4\(\left . \right ]\) puis \(\left [ \right .\)1,2,3,4\(\left . \right ]\).
- Syntax error
- \(\left [ \right .\)1,2,3\(\left . \right ]\) puis \(\left [ \right .\)1,2,3,4\(\left . \right ]\).
A: \(\left [ \right .\)1, 2, 3, 4\(\left . \right ]\) puis None
Feedback: Append ne retourne rien, ainsi la valeur de b est None.

Q: Quelle est la sortie quand le code suivant est exécuté ?

a=[14,52,7]

b=a.copy()

b is a
- False
- True
A: False
Feedback: La liste b est juste une copie de la liste originale. Tout changement de b n’affectera pas la liste a.

Q: Quelle est la sortie quand le code suivant est exécuté ?

a=[13,56,17]

a.append([87])

a.extend([45,67])

print(a)
- \(\left [ \right .\)13, 56, 17, \(\left [ \right .\)87\(\left . \right ]\), 45, 67\(\left . \right ]\).
- \(\left [ \right .\)13, 56, 17, 87, 45, 67\(\left . \right ]\).
- \(\left [ \right .\)13, 56, 17, 87,\(\left [ \right .\) 45, 67\(\left . \right ]\)\(\left . \right ]\).
- \(\left [ \right .\)13, 56, 17, \(\left [ \right .\)87\(\left . \right ]\), \(\left [ \right .\)45, 67\(\left . \right ]\)].
A: \(\left [ \right .\)13, 56, 17, \(\left [ \right .\)87\(\left . \right ]\), 45, 67\(\left . \right ]\).
Feedback: La fonction append ajoute simplement son argument à la liste alors que la fonction extend parcourt ses arguments et les ajouent à la liste.

Q: Quelle est la sortie quand le code suivant est exécuté ?

word1=”Apple”

word2=”Apple”

list1=[1,2,3]

list2=[1,2,3]

print(word1 is word2)

print(list1 is list2)
- True puis False
- True puis True
- False puis True
- False puis False
A: True puis False
Feedback: Dans ce cas, les deux listes sont équivalentes mais pas identiques car ce sont des objets différents.

Q: Quelle est la sortie quand le code suivant est exécuté ?

a= [1, 2, 3, 4, 5]

for i in range(1, 5):

    a[i-1] = a[i]

for i in range(0, 5):

    print(a[i],end = ” ” )
- 2 3 4 5 5
- 5 5 1 2 3
- 5 1 2 3 4
- 2 3 4 5 1
A: 2 3 4 5 5
Feedback: Les éléments avec des index entre 1 et 4 sont décalés d’un index par la première boucle et affichés par la seconde boucle.

Q: Quelle est la sortie quand le code suivant est exécuté ?

a = [1, 5, 7, 9, 9, 1]

b=a[0]

x= 0

for x in range(1, len(a)):

    if a[x] > b:

        b = a[x]

        b= x

print(b)
- 4
- 5
- 3
- 0
A: 4

Q: Quelle est la sortie quand le code suivant est exécuté ?

num = [’One’, ’Two’, ’Three’]

for i, x in enumerate(num):

    print(’{}: {}’.format(i, x),end=" ")
- 0: One 1: Two 2: Three
- 1: 2: 3:
- Une exception(erreur) est levée.
- One Two Three
A: 0: One 1: Two 2: Three
Feedback: enumerate(iterator,start=0) renvoie (0,lst\(\left [ \right .\)0\(\left . \right ]\)),(1,lst\(\left [ \right .\)1\(\left . \right ]\))...

Q: Si list1 correspond à \(\left [ \right .\)4, 2, 2, 4, 5, 2, 1, 0\(\left . \right ]\), parmi les déclarations suivantes, laquelle est une opération de slicing correcte ?
- Toutes les autres propositions
- print(list1\(\left [ \right .\)0\(\left . \right ]\))
- print(list1\(\left [ \right .\):2\(\left . \right ]\))
- print(list1\(\left [ \right .\):-2\(\left . \right ]\))
A: Toutes les autres propositions
Feedback: Le Slicing est possible sur les listes et sur les chaines de caractères.

Q: Si list1 correspond à \(\left [ \right .\)2, 33, 222, 14, 25\(\left . \right ]\), que vaut :

list1[:-1]
- \(\left [ \right .\)2, 33, 222, 14\(\left . \right ]\).
- Error
- 25
- \(\left [ \right .\)25, 14, 222, 33, 2\(\left . \right ]\).
A: \(\left [ \right .\)2, 33, 222, 14\(\left . \right ]\).

Q: Quelle est la sortie quand le code suivant est exécuté ?

names = [’Amir’, ’Bear’, ’Charlton’, ’Daman’]

print(names[-1][-1])
- n
- A
- Daman
- Error
A: n

Q: Quelle est la sortie quand le code suivant est exécuté ?

names1 = [’Amir’, ’Bear’, ’Charlton’, ’Daman’]

names2 = names1

names3 = names1[:]

names2[0] = ’Alice’

names3[1] = ’Bob’

sum = 0

for ls in (names1, names2, names3):

    if ls[0] == ’Alice’:

        sum += 1

    if ls[1] == ’Bob’:

        sum += 10

print (sum)
- 12
- 11
- 21
- 22
A: 12
Feedback: En assignant name1 à name2, on crée une référence à la même liste. Les changements qui affectent name2 affectent name1. En assignant par slicing tous les termes de names1 à name3, on crée une copie complète qui peut être modifiée indépendament.