Application Python

La version de Python disponible sur votre calculatrice NumWorks est MicroPython 1.12, compatible Python 3.4.

Une section de notre site est consacrée à la prise en main de Python et à son utilisation (avec des fiches d’activités).

Scripts

La liste des scripts

Lorsque vous arrivez dans l’application, vous tombez sur la liste des scripts enregistrés. Lorsque vous utilisez l’application pour la première fois, quatre scripts sont définis à titre d’exemple : squares.py, parabola.py, mandelbrot.py et polynomial.py.

Ajouter et supprimer un script de la liste

Vous pouvez ajouter jusqu’à 8 scripts dans la liste des scripts.

  1. Sélectionnez la case Ajouter un script qui se trouve au bas de la liste des fonctions.
  2. Validez en appuyant sur la touche ok.

Une nouveau script apparaît dans la liste. Vous pouvez à ce moment là entrer un nom pour ce script.

Pour supprimer un script, placez la sélection sur l’icône de réglages à côté du nom de ce script et appuyez sur ok. Choisissez Supprimer le script dans la liste et appuyez sur ok pour confirmer la suppression.

Renommer un script

Pour modifier le nom d’un script, placez la sélection sur l’icône de réglages à côté du nom de ce script et appuyez sur ok. Choisissez Renommer le script dans la liste et appuyez sur ok pour valider. Il ne vous reste plus qu’à changer le nom du script.

Editer un script

Pour écrire dans un script, il vous suffit de placer la sélection sur le nom de ce script et d’appuyer sur ok. L’éditeur s’ouvre et vous pouvez écrire vos algorithmes à l’intérieur.

Pour vous aider dans l’écriture, appuyez sur la touche toolbox. Un menu s’ouvre alors et présente certains raccourcis pour faciliter l’édition. Le menu Boucles et Tests propose des blocs pré-remplis pour les boucles for et while, les tests if et une série de conditions. Le menu Catalogue liste les fonctions présentes dans Python et en donne une courte description. Vous pouvez aussi utiliser la touche var pour faire apparaître la liste des fonctions définies dans vos scripts ainsi que les variables globales.

Si vous souhaitez copier-coller une partie d’un texte, sélectionnez les caractères à copier en maintenant la touche shift appuyée et en utilisant left ou right. Puis appuyez sur shift et ensuite var pour copier la sélection. Appuyez sur shift puis toolbox pour la coller.

Autocomplétion

L’éditeur de script dispose de l’autocomplétion. Lorsque vous commencez à taper un mot, l’application vous propose une suggestion en gris.

  • Pour accepter la suggestion, appuyez sur la touche right ou ok
  • Pour refuser la suggestion, appuyez sur back ou continuez simplement à écrire le mot
  • Pour obtenir une nouvelle suggestion, appuyez sur la touche up ou down
  • Toutes les suggestions possibles à partir du préfixe que vous avez entré sont listées dans le menu de la touche var

Désactiver l’importation automatique dans la console

L’importation automatique est automatiquement activée pour vos scripts. C’est à dire que la commande from nom_du_script import * est systématiquement entrée à l’ouverture de la console interactive de façon à ce que vous puissiez utiliser les fonctions que vous avez définies dans les scripts à l’intérieur de la console.

Pour désactiver l’importation automatique d’un script, placez la sélection sur l’icône de réglages à côté du nom de ce script et appuyez sur ok. Choisissez Importation auto dans la liste et appuyez sur ok pour basculer l’interrupteur. L’interrupteur devient gris et le script ne sera plus activé automatiquement.

Console d’exécution

Au bas de la liste des scripts se trouve un bouton Console d’exécution qui permet d’accéder à la console interactive de Python.

Le triple chevron >>> vous invite à entrer une commande.

Vous avez la possibilité d’utiliser les raccourcis de la touche toolbox prévue pour faciliter la saisie de texte. Le menu de la touche var affiche la liste des fonctions et des variables globales contenues dans les scripts importés.

Pour interrompre l’exécution d’un script, appuyez sur la touche back du clavier. Si le script est coincé dans une boucle infinie, appuyez longuement sur back et répétez l’opération jusqu’à l’interruption du script.

Pour plus d’informations, consultez la rubrique de notre site dédiée à la prise en main de Python.

Modules

Les modules présents dans cette version de Python sont les modules math, cmath, matplotlib.pyplot, turtle, random, kandinsky, ion et time.

Le module math

Voici la description exhaustive du module math. Vous pouvez avoir cette liste sur votre calculatrice en appuyant sur toolbox et en allant dans Modules puis dans math.

e

Constante e=2.718281828459045

pi

Constante pi=3.141592653589793

sqrt(x)

Fonction racine carrée, taper sqrt(x) pour x\sqrt{x}.

pow(x,y)

Fonction puissance, entrer pow(x,y) calcule xyx^y.

exp(x)

Fonction exponentielle, taper exp(x) pour exe^x.

expm1(x)

Fonction exponentielle moins 1, taper expm1(x) pour ex1e^x-1.

log(x)

Fonction logarithme népérien : attention, ici log(x) calcule donc ln(x)ln(x).

log2(x)

Fonction logarithme en base 2, entrer log2(x) calcule ln(x)ln(2)\frac{ln(x)}{ln(2)}.

log10(x)

Fonction logarithme en base 10, entrer log10(x) calcule ln(x)ln(10)=log(x)\frac{ln(x)}{ln(10)}=log(x).

cosh(x)

Fonction cosinus hyperbolique.

sinh(x)

Fonction sinus hyperbolique.

tanh(x)

Fonction tangente hyperbolique.

acosh(x)

Fonction arc cosinus hyperbolique.

asinh(x)

Fonction arc sinus hyperbolique.

atanh(x)

Fonction arc tangente hyperbolique.

cos(x)

Fonction cosinus en radians.

sin(x)

Fonction sinus en radians.

tan(x)

Fonction tangente en radians.

acos(x)

Fonction arc cosinus en radians.

asin(x)

Fonction arc sinus en radians.

atan(x)

Fonction arc tangente en radians.

atan2(y,x)

Entrer atan2(y,x) calcule atan(yx)atan(\frac{y}{x}).

ceil(x)

Plafond, entrer ceil(x).

copysign(x,y)

Copie le signe de y sur x : par exemple copysign(3,-1)=-3.

fabs(x)

Fonction valeur absolue, fabs(x) donne x\mid x\mid.

floor(x)

Partie entière, entrer floor(x) calcule x\lfloor x \rfloor.

fmod(a,b)

Fonction modulo, entrer fmod(a,b) renvoie aa modulo bb.

frexp(a,b)

Mantisse et exposant : par exemple, frexp(10) retourne (0.625,4) car 10=0.625×2410=0.625\times2^4.

ldexp(x,i)

Inverse de frexp(a,b), c’est à dire x×2ix\times2^i.

modf(x)

Partie fractionnaire et partie entière, par exemple modf(5.1)=(0.1,5.0).

isfinite(x)

Test si la valeur passée est finie.

isinf(x)

Test si la valeur passée est infinie.

isnan(x)

Test si la valeur passée est NaN.

trunc(x)

Troncature entière, par exemple trunc(6.7)=6.

radians(x)

Conversion de degrés en radians, par exemple radians(180) donne 3.141592653589793.

degrees(x)

Conversion de radians en degrés, par exemple degrees(pi) donne 180.

erf(x)

Fonction d’erreur, erf(x)=2π0xet2dterf(x) = \frac{2}{\pi}\int_0^x e^{-t^2} \, \mathrm dt.

erfc(x)

Fonction d’erreur complémentaire, erfc(x)=1erf(x)erfc(x) = 1-erf(x).

gamma(x)

Fonction gamma.

lgamma(x)

Logarithme de la fonction gamma, lgamma(x)=ln(gamma(x))lgamma(x)=ln(gamma(x)).

Le module cmath

Voici la description exhaustive du module cmath. Vous pouvez avoir cette liste sur votre calculatrice en appuyant sur toolbox et en allant dans Modules puis dans cmath.

e

Constante e=2.718281828459045.

pi

Constante pi=3.141592653589793.

phase(z)

Argument d’un nombre en radians, par exemple phase(1j)=1.570796326794897.

polar(z)

Conversion d’un nombre complexe en coordonnées polaire : polar(1j) renvoie (1.0, 1.570796326794897).

rect(z)

Conversion d’un nombre complexe en coordonnées algébriques : rect(1,pi/4) renvoie 0.70710+0.70710j.

exp(x)

Fonction exponentielle donnant un résultat avec partie imaginaire, par exemple exp(i*pi/4) donne 0.70710+0.70710j.

log(x)

Fonction logarithme népérien donnant un résultat avec partie imaginaire, par exemple log(1j) donne 1.570796326794897j.

sqrt(x)

Fonction racine carrée donnant un résultat avec partie imaginaire.

cos(x)

Fonction cosinus donnant un résultat avec partie imaginaire.

sin(x)

Fonction sinus donnant un résultat avec partie imaginaire.

Le module matplotlib.pyplot

Voici la description exhaustive du module matplotlib.pyplot. Vous pouvez avoir cette liste sur votre calculatrice en appuyant sur toolbox et en allant dans Modules puis dans matplotlib.pyplot.

arrow(x,y,dx,dy)

Trace une flèche du point (x,y) au point (x+dx,y+dy). Il est possible de placer un argument optionnel pour ajuster la taille de la flèche en écrivant par exemple head_width=0.1. Un autre argument optionnel peut permettre de choisir la couleur du tracé, en écrivant par exemple color="red".

axis((xmin,xmax,ymin,ymax))

Règle la fenêtre d’affichage à (xmin,xmax,ymin,ymax). L’instruction axis() renvoie la liste des valeurs des extrémités des axes. Par ailleurs, axis("off") ou axis(False) masque les axes tandis que axis("on") ou axis(True) les affiche. Pour réinitialiser les axes avec le réglage automatique, il est possible d’utiliser l’instruction axis("auto").

bar(x,height,bin_width,bottom)

Trace un diagramme en barres à partir des valeurs contenues dans la liste x et des effectifs contenus dans la liste height. Les deux derniers arguments sont facultatifs. L’argument bin_width permet de régler la largeur des barres dont la valeur est 0.8 par défaut. L’argument bottom est la liste des ordonnées de départ des barres, réglée à 0 par défaut. Il est possible de placer un argument optionnel pour choisir la couleur du tracé en écrivant par exemple color="red".

grid()

Affiche le quadrillage s’il était masqué ou masque le quadrillage s’il était affiché. Les instructions grid(True) et grid(False) permettent respectivement d’afficher ou de masquer le quadrillage.

hist(x,bins)

Trace un histogramme à partir des valeurs contenues dans la liste x. Le deuxième argument est facultatif. Si le deuxième argument est un nombre entier, il permet de régler le nombre de rectangles qui constituent l’histogramme. Ce nombre est de 10 par défaut. Si le deuxième argument est une liste, il permet de choisir les classes de l’histogramme. Par exemple si bin est [0,1,3,5], les classes seront : [0,1[, [1,3[ et [3,5]. Il est possible de placer un argument optionnel pour choisir la couleur du tracé en écrivant par exemple color="red".

plot(x,y,color)

Trace la liste y en fonction de la liste x. Les points (x,y) sont reliés par des segments. Si une seule liste y est fournie, elle est tracée en fonction de [0,1,2,3...]. L’argument color est optionnel. Il permet de choisir la couleur du tracé.

scatter(x,y)

Trace le nuage des points de coordonnées (x,y). Les arguments de la fonction peuvent être des nombres ou des listes de même longueur. Il est possible de placer un argument optionnel pour choisir la couleur du tracé en écrivant par exemple color="red".

show()

Affiche la figure.

text(x,y,"text")

Affiche le texte placé en argument aux coordonnées (x,y).

Le module turtle

Voici la description exhaustive du module turtle. Vous pouvez avoir cette liste sur votre calculatrice en appuyant sur toolbox et en allant dans Modules puis dans turtle.

forward(x)

Avance de x pixels.

backward(x)

Recule de x pixels.

right(a)

Pivote de a degrés vers la droite.

left(a)

Pivote de a degrés vers la gauche.

goto(x,y)

Va au point de coordonnés (x,y).

setheading(a)

Met une orientation de a degrés.

circle(r)

Trace un cercle de rayon r pixels.

speed(x)

Définit la vitesse du tracé (x est compris entre 0 et 10).

position()

Renvoie la position (x,y) actuelle de la tortue.

heading()

Renvoie l’orientation a actuelle de la tortue.

pendown()

Abaisse le crayon.

penup()

Relève le crayon.

pensize(x)

Taille du tracé en pixels.

write("text")

Ecrit le texte placé en argument à la position de la tortue.

isdown()

Renvoie True si le crayon est abaissé.

reset()

Réinitialise le dessin.

showturtle()

Affiche la tortue.

hideturtle()

Masque la tortue.

color('c') ou color(r,g,b)

Modifie la couleur du tracé.

colormode(x)

colormode(1.0) passe le mode couleur à 1.0 et les couleurs doivent alors être définies par des tuples de type (0.5,1.0,0.5) tandis que colormode(255) passe le mode couleur à 255 et les couleurs sont alors définies par des tuples du type (128,255,128). Par défaut le mode couleur est 255.

blue

Couleur bleue.

red

Couleur rouge.

green

Couleur verte.

yellow

Couleur jaune.

brown

Couleur marron.

black

Couleur noire.

white

Couleur blanche.

pink

Couleur rose.

orange

Couleur orange.

purple

Couleur violette.

grey

Couleur grise.

Le module random

Voici la description exhaustive du module random. Vous pouvez avoir cette liste sur votre calculatrice en appuyant sur toolbox et en allant dans Modules puis dans random.

getrandbits(k)

Génère un nombre aléatoire sur k bits.

seed(x)

Initialise le générateur aléatoire.

randrange(start,stop)

Nombre aléatoire dans la liste range(start,stop).

randint(a,b)

Génère un entier aléatoire dans [a,b].

choice(list)

Nombre aléatoire dans la liste spécifiée en argument.

random()

Génère un nombre aléatoire décimal dans [0,1[.

uniform(a,b)

Génère un nombre aléatoire dans [a,b].

Le module kandinsky

Voici la description exhaustive du module kandinsky. Vous pouvez avoir cette liste sur votre calculatrice en appuyant sur toolbox et en allant dans Modules puis dans kandinsky.

color(r,g,b)

Génère la valeur de la couleur r,g,b. Vous pouvez aussi simplement utiliser un tuple pour définir une couleur : (r,g,b).

get_pixel(x,y)

Renvoie la couleur du pixel aux coordonnées x,y sous forme de tuple (r,g,b).

set_pixel(x,y,color)

Allume le pixel x,y de la couleur color.

draw_string(text,x,y,[color1],[color2])

Affiche le texte text aux coordonnées x,y. Les arguments color1 (couleur du texte) et color2 (couleur de l’arrière plan du texte) sont optionnels.

fill_rect(x,y,width,height,color)

Remplit un rectangle de largeur width et de hauteur height avec la couleur color au point de coordonnées x et y.

Le module ion

Voici la description du module ion. Vous pouvez avoir cette liste sur votre calculatrice en appuyant sur toolbox et en allant dans Modules puis dans ion.

keydown(k)

Renvoie True si la touche k placée en argument est appuyée et False sinon.

Les autres éléments de ce menu indiquent la syntaxe utilisée pour désigner les touches du clavier.

Le module time

Voici la description du module time. Vous pouvez avoir cette liste sur votre calculatrice en appuyant sur toolbox et en allant dans Modules puis dans time.

monotonic()

Renvoie la valeur de l’horloge au moment où la fonction est appelée.

sleep(t)

Suspend l’exécution pendant `t secondes.

La touche var et la touche Toolbox

La touche var

Dans l’éditeur de script, le menu de la touche var liste les suggestions d’autocomplétion disponibles.

Dans la console d’exécution, le menu de la touche var recense l’ensemble des fonctions définies dans vos scripts importés (ne contenant pas d’erreur) ainsi que les variables globales.

La touche Toolbox

Le menu de la touche toolbox contient quatre sections permettant une édition plus rapide de vos scripts.

Boucles et tests

Contient des instructions à trous pour les boucles for et while ainsi que les tests if.

Modules

Contient les fonctions disponibles dans les modules math, cmath, matplotlib.pyplot, turtle, random, kandinsky, ion et time.

Catalogue

Contient les fonctions utilisables dans Python, notamment celles des modules mais aussi des fonctions comme print()et input(). Une recherche alphabétique avec les lettres du clavier est possible.

Fonctions

Contient les instructions pour définir une fonction : def fonction(argument): et return.