(pour l'enseigner l'an prochain, par exemple)

samedi 9 mars 2013

python facile sous Windows: Python(x,y)


Python(x,y), c'est python à la portée de tout le monde sous Windows.
Voici comment débuter facilement. Pour la suite, consulter ce guide par exemple.

1.Télécharger Python(x,y) ici (patience, ça fait 500 Mégas mais ça vaut le coup),
puis l'installer, en  exécutant le fichier Python(x,y)-2.7.3.1.exe (re-patience, c'est longuet, mais ... je l'ai déjà dit.)
Si on veut faire du calcul formel (genre Maple), il faut ajouter sympy à Python(x,y).
Pour cela télécharger le fichier sympy-0.7.2-1_py27.exe ici, puis l'exécuter.


2. Ensuite, lancer Python(x,y) (raccourci du bureau, ou menu démarrer-> Python(x,y)->Python(x,y))
Dans la fenêtre qui s'ouvre, cliquer sur le carré avec la toile d'araignée, en face de Spyder/Options...:


Ça lance l'interface Spyder (je l'ai un peu réduite pour que ça ne soit pas trop large):


Bon, à gauche, il y a une fenêtre appelée Éditeur: 
c'est un éditeur de fichier, on y écrit ses programmes, on les sauvegarde, charge, l'édition classique d'un fichier genre Openoffice ou Word.
À droite, en bas, la fenêtre appelée  Console est une fenêtre d'exécution, où on tape des commandes et Python les exécute, en affichant le résultat.

3. Un premier programme: la fonction factorielle.
Tapons dans l'Éditeur, sur la dernière ligne (la ligne 8):

def fact(n):
    if n==0: return(1)
    else: return(n*fact(n-1))

attention aux décalages en début de lignes, il sont importants pour python.

Testons ce programme, pour cela on l'exécute avec la touche F5,
comme c'est un nouveau programme, cela ouvre une fenêtre de sauvegarde classique (cliquer sur l'image pour zoomer):


on sauvegarde donc notre programme dans un fichier,
ensuite, python demande comment exécuter:

 cocher <<Exécuter dans l'interpréteur Python ou IPython actif>>, puis cliquer Exécuter,
(ces deux étapes n'arriveront plus ensuite, python se souviendra de nos choix pour ce fichier)

et on voit que python l'exécute dans la fenêtre Console, en bas à droite:

Python connaît donc maintenant la fonction fact que l'on vient de programmer, testons-la en tapant
 fact(3) puis Entrée dans la fenêtre Console, sur la dernière ligne non vide (!):

On obtient la réponse souhaitée :)
Testons fact(100):


Pas mal ;)

Voilà, avec ça on peut déjà programmer et tester confortablement avec python.

4. Calcul formel:
il suffit de charger sympy dans la console:
from sympy import *
et voilà. Définissons, toujours dans la console,
quelques symboles utiles:
x, y, z, t = symbols('x y z t')
k, m, n = symbols('k m n', integer=True)
f, g, h = symbols('f g h', cls=Function)
et testons:
Cool.


lundi 4 mars 2013

utiliser sympy sous windows


sympy est le module de calcul formel de python, très proche de Maple.
Voilà comment l'installer sous windows 7 (sous vista sans doute aussi).

1. on se contente de python 2.

Là c'est facile, il y a tout un environnement de programmation avec édition de fichiers de programmes, gestion de projets, environnement d'exécution, tout pour l'utilisateur néophyte.
Voir le message suivant.

2. on veut python 3.

Deux solutions:

a) avec cygwin.

On installe cygwin, et du coup on travaille comme sous linux (emacs, xterm, etc).
C'est ce que je fais, mais il faut être un peu informaticien.

b) on n'y connaît rien à linux.

Là, c'est plus spartiate:

- installer python 3:

télécharger http://www.python.org/ftp/python/3.3.0/python-3.3.0.msi
exécuter ce fichier, cela installe python 3.3.0, par défaut dans C:\Python33

- copier sympy:

décompresser ce fichier: sympy-0.7.2.zip
  et mettre le répertoire sympy-0.7.2 qu'il contient dans C:\Python33
télécharger ce fichier: sympy.bat et le mettre dans C:\Python33

Pour lancer sympy, double-cliquer sur C:\Python33\sympy.bat

on a une console pas très jolie, dans laquelle on navigue sur la ligne de commande avec les flèches <- et ->, et dans les commandes précédentes avec les flèches haut et bas. On copie/colle avec le click droit dans la fenêtre. On peut changer les couleurs de la console (texte, foncd) en cliquant droit sur le haut de la fenêtre et en réglant les propriétés.

- exemples de commandes:

expand((x+y)**5)


factor(x**5-y**5)

limit(1/x, x, oo)

solve(x**3 + 2*x + 3, x)

diff(x**2-1,x)

diff(x**2-1,x,2)

integrate(1/x**2,x)

series(sin(x),x,0,5)

series(ln(1+x),x,0,5)

summation(1/2**n, (n, 0, oo))

factor(summation(k, (k, 0, n)))


groebner([x**2 + 1, y**4*x + x**3], x, y, order='lex') #grevlex