\begin{questions}
\item Réponse \choix[c]. Nous souhaitons construire une table donc il doit y avoir deux paires de crochets; ainsi, les réponses \choix[a] et \choix[b] sont impossibles.

De plus, la construction des lignes s'écrit avant la boucle \og for \fg. La réponse \choix[d] est alors incorrecte.

\item Réponse \choix[d]. La syntaxe commence nécessairement par \og with open \fg{} donc les réponses \choix[a] et \choix[b] sont incorrectes. De plus, après avoir ouvert le fichier CSV, on lui donne un alias avec la syntaxe \og as ... \fg; la réponse \choix[c] est alors incorrecte car il n'y a pas d'alias après l'ouverture du fichier. Cet alias est utilisé ensuite dans la fonction\linebreak \texttt{csv.reader(<mon alias>)}. Dans la réponse correcte, l'alias utilisé est \og fic \fg{} (dans le cours, l'alias utilisé est \og csvfile \fg, mais on peut prendre l'alias que l'on veut).

\enlargethispage*{1em}
\item Réponse \choix[b]. En effet, la réponse \choix[a] ne peut pas être correcte car les items de \texttt{table} sont des listes et non des nombres; par conséquent, si on souhaite tester les items de la table, ce test doit concerner des listes et non des nombres. Par exemple, \og \texttt{if [1,2,3] in table} \fg{} est correct (si on sait que les items de \texttt{table} sont des listes à 3 colonnes).

Pour les mêmes raisons, la réponse \choix[c] n'a pas de sens (car il y a toujours le test \og \texttt{if 7 in table} \fg).

Quant à la réponse \choix[d], elle aurait pu avoir un sens si elle avait été écrite ainsi :
\begin{center}
\texttt{for i in table: for j in i: if 7 == j: <instructions>}
\end{center}
Mais avec \og \texttt{in} \fg{} à la place de \og \texttt{==} \fg, elle n'a plus de sens.

\item Réponse \choix[a]. On définit une fonction \texttt{f} en la nommant puis en disant à quoi elle est égale (on met donc le signe \og = \fg{} juste après son nom, suivi de \og lambda \fg{} et de la (ou des) variable(s). Ensuite, on définit l'expression de l'image après avoir écrit \og : \fg.
\end{questions}
