Premiers pas avec Python 1 Présentation de Pyzo 2 Variables

publicité
Premiers pas avec Python
1
Présentation de Pyzo
1.1
Accéder à Pyzo
Pour commencer à travailler, il vous faut démarrer une session Windows à l’aide de vos identifiants.
Vous aurez accès à votre espace personnel de sauvegarde dans Mes Documents. Il est cependant
préférable d’effectuer les sauvegardes sur une clef USB.
Le bureau doit présenter un raccourci vers une application nommée Pyzo. Lancez l’application ; une
fenêtre s’ouvre qui contient plusieurs sous-fenêtres dont essentiellement deux vont nous intéresser : le
terminal Python et l’éditeur de texte.
1.2
Le mode interactif
La partie supérieure de la fenêtre est le terminal (ou shell) Python. On dispose d’une invite >>> (ou
In) après laquelle on peut interroger Python qui répond quand on appuye sur le touche return (comme
une calculatrice). Notez que l’on peut accéder aux dernières commandes avec les flèches ce qui permet
de ne pas tout avoir à retaper si on a fait une erreur de syntaxe sur une ligne.
Q.1. Donner le quotient et le reste dans la division euclidienne de 2014 par 73 (ne manipuler que
des éléments de type int).
Q.2. Vous avez accès à une aide (en anglais) sur les fonctions Python en tapant help(...). Que
fait la fonction max ? Vérifiez en donnant trois arguments entiers puis en essayant avec deux
listes de flottants.
Q.3. Calculer (6/5)1.1 .
La “session” effectuée en mode interactif ne peut être sauvegardée. C’est pourquoi on transitera de
manière quasi-systématique par l’éditeur de texte.
1.3
Le mode script
Le texte que vous écrivez dans l’éditeur s’appelle un script (ou programme). Ce sont des lignes de code
Python que l’on envoie au terminal (à l’interpréteur Python) quand on le désire. Ce fichier pourra être
enregistré mais il faut que son nom contienne l’extension .py.
Notre premier script demande à l’utilisateur un mot de passe et imprime à l’écran son nombre de
lettres. Ecrivez le texte suivant dans l’éditeur (une commande par ligne) :
mot=input("Quel est votre mot de passe ?")
print("Votre mot de passe contient",len(mot)," symboles")
Sauvegardez le fichier (sous le nom td1.py par exemple et si possible sur clef). Utilisez alors le
menu déroulant Exécuter (mieux, les raccourcis clavier qu’il propose) pour envoyer les commandes à
l’interpréteur Python. Voyez ce qui se passe dans le terminal.
Un TD consistera en général en l’écriture d’un certain nombre de fonctions suivie de questions pour
tester et/ou utiliser les fonctions écrites. On écrit dans l’éditeur, on exécute le bout de code que l’on
vient d’écrire puis on le corrige si l’interpréteur a détecté une erreur.
2
Variables
Q.4. Dans cet exercice, on doit répondre SANS avoir testé les commandes. On teste ensuite en
affichant la valeur des variables. Il s’agit de déterminer la valeur des variables à l’issue des séries
d’instructions qui suivent.
1
Série 1
a=4
b=2
c=b
b=a
Série 2 Série 3
Série 4 Série 5 Série 6
a=2
x=5
a=4
a1=1
a=3
b=4
y=2*x+3 b=2
i=1
b=4
c=a
x=100
c=b
ai=3
x=a
b=a
b=a
i=3
a=b
c=b-a
a=c
ai=6
c=x
Q.5. Dans cet exercice, on doit redémarrer le terminal avant chaque série de commandes. On doit
comprendre les messages d’erreur.
Série 1 Série 2 Série 3
a=4
b=2
i=3
b=2
b=a
ai=3*i
2=a
b=2*a3
b=3
3
Premières fonctions
Q.6. Ecrire une fonction f qui à un réel x associe
3x
. La tester en 1, 106 , 1020 , 1025 , 10−2 , 10−8 , 10−13 .
1 + 8x3
1
Que répond Python pour f (− ) ?
2
Q.7. Ecrire une fonction racine prenant en argument des réels a, b, c et qui renvoie la liste des
solutions réelles de l’équation ax2 + bx + c = 0 (on renverra donc, selon les cas, une liste avec
0, 1 ou 2 éléments). Tester avec des exemples significatifs.
Q.8. On rappelle qu’une année est bissextile quand son numéro est multiple de 4 mais pas de 100
ou alors multiple de 400. Par exemple 2000 était une année bissextile (multiple de 400) mais
1900 (multiple de 100 mais pas de 400) ou 1998 (non multiple de 4) ne l’étaient pas. Ecrire une
fonction bissextile qui prend en argument un entier et qui renvoie un booléen indiquant s’il
s’agit d’un numéro d’année bissextile.
4
Premières boucles
Q.9. On considère la fonction suivante :
def mystere(n):
#On suppose que l’argument n est un entier naturel
k,f=1,1
while k<n:
f=f*k
k=k+1
return(f)
Simuler l’appel mystere(4). Deviner, en fonction de l’argument n, ce que renvoie cette fonction.
Q.10. Ecrire une fonction prenant en argument une liste de nombres et renvoyant le produit de
ces nombres. Tester.
Q.11. On considère la suite définie par u0 = a et, pour k ≥ 0, uk+1 = u2k − 3k.
- Ecrire une fonction prenant en argument un flottant a et renvoyant le premier indice n tel
que un ≤ 0. Tester avec différentes valeurs de a.
- Pourquoi une telle fonction pourrait-elle poser problème ? Pensez-vous que c’est le cas ?
2
Téléchargement