\documentclass[11pt,a4paper]{../../template/template_cours}

\begin{document}
\section{Les chaines de caractères et les types construits en
Python}\label{les-chaines-de-caractuxe8res-et-les-types-construits-en-python}}

~

\begin{longtable}[]{@{}
  >{\raggedright\arraybackslash}p{(\columnwidth - 8\tabcolsep) * \real{0.20}}
  >{\raggedright\arraybackslash}p{(\columnwidth - 8\tabcolsep) * \real{0.20}}
  >{\raggedright\arraybackslash}p{(\columnwidth - 8\tabcolsep) * \real{0.20}}
  >{\raggedright\arraybackslash}p{(\columnwidth - 8\tabcolsep) * \real{0.20}}
  >{\raggedright\arraybackslash}p{(\columnwidth - 8\tabcolsep) * \real{0.20}}@{}}
\toprule
\begin{minipage}[b]{\linewidth}\raggedright
~
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
{\textbf{Chaînes}}
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
{\textbf{Tuples}}
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
{\textbf{Listes}}
\end{minipage} & \begin{minipage}[b]{\linewidth}\raggedright
{\textbf{Dictionnaires}}
\end{minipage} \\
\midrule
\endhead
\textbf{{Type}} & Str & Tuple & List & Dict \\
{\textbf{Création}} & \begin{minipage}[t]{\linewidth}\raggedright
\begin{verbatim}
s="abc"
\end{verbatim}
\end{minipage} & \begin{minipage}[t]{\linewidth}\raggedright
\begin{verbatim}
t=("a","b",5)
\end{verbatim}
\end{minipage} & \begin{minipage}[t]{\linewidth}\raggedright
\begin{verbatim}
l=["a","b",5]
\end{verbatim}
\end{minipage} & \begin{minipage}[t]{\linewidth}\raggedright
\begin{verbatim}
d={"cle1":"a","cle2":"b"}
\end{verbatim}

\hfill\break
Les clés peuvent être de\\
type int, float, str ou\\
tuples non mutables\strut
\end{minipage} \\
{\textbf{Longueur}} & \begin{minipage}[t]{\linewidth}\raggedright
\begin{verbatim}
len(s)
\end{verbatim}
\end{minipage} & \begin{minipage}[t]{\linewidth}\raggedright
\begin{verbatim}
len(t)
\end{verbatim}
\end{minipage} & \begin{minipage}[t]{\linewidth}\raggedright
\begin{verbatim}
len(l)
\end{verbatim}
\end{minipage} & \begin{minipage}[t]{\linewidth}\raggedright
\begin{verbatim}
len(d)
\end{verbatim}
\end{minipage} \\
\multirow{4}{*}{\textbf{{Valeur}}~} &
\begin{minipage}[t]{\linewidth}\raggedright
d'indice i

\begin{verbatim}
s[i]
\end{verbatim}
\end{minipage} & \begin{minipage}[t]{\linewidth}\raggedright
d'indice i

\begin{verbatim}
t[i]
\end{verbatim}
\end{minipage} & \begin{minipage}[t]{\linewidth}\raggedright
d'indice i

\begin{verbatim}
l[i]
\end{verbatim}
\end{minipage} & \begin{minipage}[t]{\linewidth}\raggedright
associée à une clé

\begin{verbatim}
d["cle1"]
\end{verbatim}
\end{minipage} \\
& \begin{minipage}[t]{\linewidth}\raggedright
d'indice i à j-1

\begin{verbatim}
s[i:j]
\end{verbatim}
\end{minipage} & \begin{minipage}[t]{\linewidth}\raggedright
d'indice i à j-1

\begin{verbatim}
t[i:j]
\end{verbatim}
\end{minipage} & \begin{minipage}[t]{\linewidth}\raggedright
d'indice i à j-1

\begin{verbatim}
l[i:j]
\end{verbatim}
\end{minipage} & ~ \\
& \begin{minipage}[t]{\linewidth}\raggedright
à partir de l'indice i

\begin{verbatim}
s[i:]
\end{verbatim}
\end{minipage} & \begin{minipage}[t]{\linewidth}\raggedright
à partir de l'indice i

\begin{verbatim}
t[i:]
\end{verbatim}
\end{minipage} & \begin{minipage}[t]{\linewidth}\raggedright
à partir de l'indice i

\begin{verbatim}
l[i:]
\end{verbatim}
\end{minipage} & ~ \\
& \begin{minipage}[t]{\linewidth}\raggedright
jusqu'à l'indice j-1

\begin{verbatim}
s[:j]
\end{verbatim}
\end{minipage} & \begin{minipage}[t]{\linewidth}\raggedright
jusqu'à l'indice j-1

\begin{verbatim}
 t[:j]
\end{verbatim}
\end{minipage} & \begin{minipage}[t]{\linewidth}\raggedright
jusqu'à l'indice j-1

\begin{verbatim}
l[:j]
\end{verbatim}
\end{minipage} & ~ \\
\textbf{{Concaténation}} & \begin{minipage}[t]{\linewidth}\raggedright
\begin{verbatim}
"ab"+"c"
\end{verbatim}
\end{minipage} & \begin{minipage}[t]{\linewidth}\raggedright
\begin{verbatim}
t=("a","b")+("c",)
\end{verbatim}
\end{minipage} & \begin{minipage}[t]{\linewidth}\raggedright
\begin{verbatim}
[";a","b"]+["c"]
\end{verbatim}
\end{minipage} & ~ \\
\begin{minipage}[t]{\linewidth}\raggedright
\textbf{{Ajout d'un\\
élément}}\strut
\end{minipage} & \textbf{Non mutable} & \textbf{Non mutable} &
\begin{minipage}[t]{\linewidth}\raggedright
\begin{verbatim}
l.append("d")
\end{verbatim}
\end{minipage} & \begin{minipage}[t]{\linewidth}\raggedright
\begin{verbatim}
d["cle3"]="c"
\end{verbatim}
\end{minipage} \\
\begin{minipage}[t]{\linewidth}\raggedright
\textbf{{Suppression\\
d'un élément}}\strut
\end{minipage} & \textbf{Non mutable} & \textbf{Non mutable} &
\begin{minipage}[t]{\linewidth}\raggedright
d'indice i\textless/p

\begin{verbatim}
l.pop(i)
\end{verbatim}
\end{minipage} & \begin{minipage}[t]{\linewidth}\raggedright
de clé donnée

\begin{verbatim}
d.pop("cle1")
\end{verbatim}

\hfill\break
ou\\

\begin{verbatim}
del d["cle1"]
\end{verbatim}
\strut
\end{minipage} \\
\multirow{3}{*}{\textbf{{Parcours}}} &
\begin{minipage}[t]{\linewidth}\raggedright
Avec l'indice

\begin{verbatim}
for i in range(len(s)):
  print(s[i])
\end{verbatim}
\end{minipage} & \begin{minipage}[t]{\linewidth}\raggedright
Avec l'indice

\begin{verbatim}
for i in range(len(t)):
  print(t[i])
\end{verbatim}
\end{minipage} & \begin{minipage}[t]{\linewidth}\raggedright
Avec l'indice

\begin{verbatim}
for i in range(len(l)):
  print(l[i])
\end{verbatim}
\end{minipage} & \begin{minipage}[t]{\linewidth}\raggedright
Parcours des clés

\begin{verbatim}
for cle in d:
  print(cle)
\end{verbatim}
\end{minipage} \\
& \begin{minipage}[t]{\linewidth}\raggedright
Directement

\begin{verbatim}
for x in s:
  print(x)
\end{verbatim}
\end{minipage} & \begin{minipage}[t]{\linewidth}\raggedright
Directement

\begin{verbatim}
for x in t:
  print(x)
\end{verbatim}
\end{minipage} & \begin{minipage}[t]{\linewidth}\raggedright
Directement

\begin{verbatim}
for x in l:
  print(x)
\end{verbatim}
\end{minipage} & \begin{minipage}[t]{\linewidth}\raggedright
Parcours des valeurs

\begin{verbatim}
for val in d.values():
  print(val)
\end{verbatim}
\end{minipage} \\
& ~ & ~ & ~ & \begin{minipage}[t]{\linewidth}\raggedright
Parcours des clés et valeurs

\begin{verbatim}
for cle,val in d.items():
  print(cle,val)
\end{verbatim}
\end{minipage} \\
\bottomrule
\end{longtable}

\end{document}
