11.10.2008
[python] - Programmation débutante sous linux
Nous allons nous lancer dans une série qui va apprendre à faire des petits programmes en Python.
Pré-requis - Créons notre fichier :
Grâce à cette série sur la programmation, nous allons également aborder la "console"... sous kde vous pouvez lancez konsole et sous gnome gnome-terminal
Vous vous trouvez devant un terminal qui va nous permettre de donner des ordres à l'ordinateur.
Ce que nous voulons faire :
1- créer un dossier, pour cela vous devez taper mkdir python et valider avec la touche entrée, vous venez de créer un dossier python dans votre dossier utilisateur (qui est l'emplacement par défaut du terminal) mkdir signifie make directory (créer un répertoire), vous pouvez allez voir dans gestionnaire de fichiers graphique il est bien là.
2- nous déplacer dedans, tapez cd python ce qui signifie que vous êtes dans le répertoire python (Change Directory).
3- créer un fichier,nous allons maintenant lancer notre éditeur de texte pour taper le programme. Sous kde, tapez kate bonjour et sous gnome gedit bonjour (vous l'aurez compris bonjour sera le nom de notre programme) une fois cela fait tapez :
#!/usr/bin/python
print "Bonjour"
C'est tout simple, la première ligne indique où se trouve python, elle sera systématiquement présente dans tous vos programmes, et la deuxième indique qu'il faut afficher le mot bonjour.Enregistrez votre programme.
4- le rendre exécutable, de retour dans notre terminal nous allons rendre notre programme exécutable : chmod +x bonjour voilà il ne nous reste plus qu'à lancer notre joli programme ./bonjour (le ./au début indique qu'il faut lancer le fichier bonjour dans le répertoire dans lequel on se trouve)
5- voir le rendu :

Notre programme nous dit bonjour, vous avez crée votre premier programme,.Nous allons maintenant rendre le programme plus évolué et plus poli, nous allons faire en sorte qu'il nous demande notre nom, et qu'il nous réponde bonjour "votre nom".
Réeditez votre programme (inutile de tout retaper, utilisez les flèches du clavier vers le haut pour revenir au moment ou vous avez tapé kate bonjour ou gedit bonjour) et rajoutez les éléments en vert
#!/usr/bin/python
nom = raw_input('Votre nom : ')
print "Bonjour" + nom
lancez votre programme en tapant ./bonjour et voyez la différence.....

#!/usr/bin/python
from string import atoi
valeur = raw_input('Montant : ')
combien = atoi(valeur)
multiplication = combien * 6.55957
print valeur + " en francs fait " + str(multiplication) + " Francs"
Automatiquement votre programme vous converti votre valeur en francs. Analysons un peu le code. une nouveauté la deuxième ligne : nous avons besoins de convertir ce que vous allez rentré en chiffre (sinon cela s'appelle un string : autrement dit du texte) il est donc nécessaire d'appeler en renfort des modules qui vont nous permettre de faire cela automatiquement en l'occurrence atoi d'ou le "from string import atoi".
la 3eme ligne vous demande le champs comme nous l'avons vu. et la quatrième permet de convertir votre texte (string) en chiffre (ici un int c'est à dire un chiffre sans virgule, si vous tapez 15.2 vous aurez une erreur). la variable combien converti donc votre texte (string) en chiffre entier (int). la variable multiplication elle, permet de multiplier "combien" par 6.55957... et la vous me direz mais y'a une virgule là?
Et oui effectivement, 6.55957 est un flottant (float), mais python fait le nécessaire pour vous et converti automatiquement votre "combien" (qui est un int) en float. d'où le résultat que vous obtenez avec le print.
Un programme plus probant serait d'autoriser la saisie de variable avec virgule(en fait des points), pour cela il suffit de remplacer à la ligne 2 et 5 les atoi en atof pour convertir notre texte (string) en flottant (float).
Pour réaliser des opérations de calcul, vous avez à votre disposition : + pour les additions, - pour les soustractions, * pour les multiplications et / pour les divisions.
from string import atof
combien_sur_vous = atof(raw_input('Combien avez vous : '))
objet_desire = atof(raw_input('Montant de votre achat : '))
if combien_sur_vous < objet_desire:
Petite nouveauté vous constatez que l'on a placé atof et raw_input sur la même ligne, on gagne de la place en en-capsulant les variables, atof converti directement le retour de raw_input. On prends donc les deux variables (combien_sur_vous et objet_desire)
