TD⚓︎
Exercice 1
foo = (1, 2, 3, 4)
- Que retournera
foo[0],foo[4]? - Quel sera l'effet de
foo[1] = 5? - Quel sera l'effet de
a, b, c, d = foo?
Exercice 2
Écrire une fonction somme_produit(a, b) recevant deux valeurs (entières), et renvoyant leur somme et leur produit.
Exercice 3
Écrire une fonction liste_de_points(n) demandant à l'utilisateur les coordonnées de n points et les stockant dans une liste. Chaque point sera modélisé par un tuple (exemple (1,-5))
Exercice 4
def foo(bar):
'''
Parameters:
bar (str): une chaine de caractère
'''
for var in bar:
if var in "aeiouy":
return True
return False
Que fait cette fonction ?
Exercice 5
def foo(bar):
'''
Parameters:
bar (list): une liste de listes
'''
for ligne in bar:
for elem in ligne:
if elem == 0:
return True
return False
Que fait cette fonction ?
Exercice 6
- Ecrire une fonction
nbre_de_a(chaine)prenant en paramètre une chaine de caractèreschaineet retournant le nombre de a. - Ecrire une fonction
nbre_de_carac(chaine,carac)prenant en paramètre une chaine de caractèreschaineet une chaine d'un unique caractèrecaracet retournant le nombre de fois quecaracapparait dans le chaine. - Ecrire une fonction
nbre_de_voyelles(chaine)prenant en paramètre une chaine de caractèreschaineretournant le nombre de voyelles dans le chaine.
Exercice 7
Décrire les range suivant sur le modèle ci-dessous:
range(10) --> 0, 1, 2...., 9
range(8)range(-5)range(3, 8)range(5, 4)range(3, 10, 2)range(3, 10, 20)
Exercice 8
Que retournent les phrases suivantes:
[int(x) for x in ('1','29','3')][int(x) for x in '2021'][int(x) for x in str(1998)][c for c in 'bonjour' if c not in "aeiouy"][i for i in range(10, 5, -1)][i for i in range(10, 5, -3)]
Exercice 9
Que retournent les instructions suivantes:
[ 1 for i in range(5)][ i for i in range(5)][ i + 1 for i in range(5)][2 * i for i in range(5)][i ** 2 for i in range(10) if i%2 == 0][2 ** i for i in range(5)]
Exercice 10
Créer les listes suivantes:
[1, 2, 3, 4, ..., 98, 99][1, 3, 5, ..., 97, 99][0, 3, 6, ..., 96, 99][1, 0.5, 0.33333333, 0.25, 0.2, ...., 0.01 ][1, -1, 1, -1, 1, ..., 1, -1](de longueur 100)
Exercice 11
foo = [[1, 2, 3, 4],[5, 6, 7, 8],[9, 10, 11, 12],[13, 14, 15, 16]]
- Que retournera
foo[3]?foo[3][0]?foo[0][3]? - Comment sera la liste
fooaprès l'éxécution de la lignefoo[2][1] = 5?
Exercice 12
- Créer une liste de listes
grillecorrespondant à la grille suivante:

On représentera les cercles par le chiffre 0, les croix par le chiffre 1 et les cases vides par None.
- Quelle instruction écrire pour modifier le premier cercle en une croix ?
- Ecrire une fonction
efface(grille)prenant en paramètre une grille carrée de taille 5 et la vidant.
Exercice 13
Ecrire une fonction somme(mat1, mat2) prenant en paramètre deux listes de listes de même taille et retournant une liste de liste de même taille ou chaque valeur est somme des valeurs de mat1 et mat2.
Voici une doctest correspondante.
>>> somme([[0,1],[1,0]],[[1,0],[0,1]])
[[1,1],[1,1]]
>>> somme([[0,1,2],[3,4,5]],[[1,1,1],[1,1,1]])
[[1,2,3],[4,5,6]]