Cours
Cours
Cours
Blog
Informatique
Comptabilité
Economie
Marketing
Management
Gestion
Statistiques
Finance
Commerce
Electronique
Electricité
Cours gratuits » Cours informatique » Cours programmation » Cours Python » Cours du langage
Python et JavaScript pour débutant
Télécharger aussi :
Stéphane Perret
Version 3.000
Je cite le livre «Apprendre à programmer avec Python»qui est librement téléchargable à partir de .
Python est un langage portable, dynamique, extensible, gratuit, qui permet (sans l’imposer) une
approche modulaire et orientée objet de la programmation. Python est développé depuis 1989 par
Guido van Rossum et de nombreux contributeurs bénévoles.
1. Python est gratuit et portable : il existe sur Linux, Unix, Mac et Windows.
3. Python est un langage qui continue à évoluer, soutenu par une communauté d’utilisateurs dont
la plupart sont des supporters du logiciel libre.
JavaScript est utilisé dans des millions de pages web afin d’améliorer leur conception. Il s’agit d’une
couche de programmation supplémentaire qui vient s’ajouter au langage HTML. Le code HTML est le
langage de base que toute page Internet se doit d’utiliser : en plus de son rôle proche d’un
traitement de texte, ce langage permet de surfer grâce aux liens hypertextes. Quant à JavaScript, il a
été conçu pour donner plus d’interactivité aux pages HTML. Le mot script indique qu’il s’agit d’un
langage de programmation simplifié qui s’exécute en local sur l’ordinateur qui est en train de lire la
page web. Ce langage, comme l’HTML, ne nécessite l’achat d’aucune licence pour pouvoir l’utiliser.
Initialement, JavaScript a été développé par Netscape, mais maintenant la plupart des explorateurs
permettant de naviguer sur Internet sont compatibles avec JavaScript.
1. JavaScript est déjà installé sur la grande majorité des navigateurs Internet.
2. JavaScript est gratuit et portable : il existe sur Linux, Unix, Mac et Windows.
3. JavaScript livre aux concepteurs de pages web un outil de programmation avec unesyntaxe
élémentaire.
4. JavaScript permet l’utilisation de textes dynamiques dans une page web : on peutpar exemple
afficher la date d’aujourd’hui.
5. JavaScript peut réagir à un événement particulier. Par exemple quand une page aterminé son
chargement ou quand un utilisateur clique sur un élément HTML.
Il est important de bien préciser que même si les noms sont très proches, Java et JavaScript sont
deux langages bien distincts. Java est développé par Sun Microsystems et est un langage de
programmation bien plus puissant et complexe que JavaScript. Java peut se comparer au langage C+
+.
Il s’agit du premier programme qu’un utilisateur crée lors d’une prise de contact avec un langage de
programmation inconnu. Il consiste à afficher le texte «Hello World!».
Voici les étapes à respecter, sous Windows, afin de pouvoir faire fonctionner ce programme.
1. Ouvrir un éditeur de texte tel que Notepad ou Notepad++. Il est important de ne pas utiliser de
fonctions avancées de la mise en page et de toujours sauvegarder le document en mode texte.
Fichier Fichier
Enfin, la balise <script src=""></script> indique à l’explorateur Internet qu’il va falloir interpréter en
langage JavaScript le contenu du ficher .
Dans le fichier , la commande JavaScript document.write permet d’écrire Hello World! sur la page
affichée par l’explorateur Internet.
Lorsqu’on programme, il faut toujours bien commenter ce que le programme fait afin qu’il soit
rapidement compréhensible. Des entreprises comme Google n’engagent que des programmeurs qui
ont un code clair et lisible (donc bien documenté). Or, un commentaire est facile à mettre : tout le
texte qui suit // n’est pas interprété par JavaScript.
Néanmoins, // ne fonctionne que pour une ligne. Si on veut écrire un commentaire de plusieurs
lignes, on peut aussi utiliser /* pour commencer le commentaire et */ pour le finir. Voici les deux
façons d’écrire un commentaire sur plusieurs lignes.
// Ceci est un commentaire
/* Ceci est un commentaire sur
// sur plusieurs lignes plusieurs lignes */
Attention à ne pas confondre avec les balises de commentaires du langage qui sont les suivantes et
qui fonctionnent indépendamment du nombre de lignes.
Voici les étapes à respecter, sous Windows, afin de pouvoir faire fonctionner ce programme.
1. Installer Python. Sous Windows, on utilisera PortablePython. On peut aussi utiliser MovableIDLE.
Ces deux environnements ont l’énorme avantage d’être portables, c’est-à-dire qu’ils peuvent être
installés sur une clé USB et ainsi permettre leur exécution sur n’importe quel PC.
2. Ouvrir l’éditeur .
print("Hello World!")
4. Sauvegarder le document sous le nom et cliquer sur l’icône verte en forme de bouton play (tout
à droite sur l’image ci-dessous).
La commande print permet d’écrire Hello World!, en-dessous des symboles >>> qui signalent
l’interprétation du script (programme), dans la fenêtre appelée Python Interpreter en bas de l’écran.
Alternative. Lorsqu’on désire tester une commande en Python, on peut directement la taper dans la
fenêtre Python Interpreter. Le résultat est ainsi instantané.
Dans Python, un commentaire est facile à mettre : tout le texte qui suit # n’est pas interprété.
Le programme PyScripter permet de mettre plusieurs lignes en commentaires. Pour cela, il suffit de
les sélectionner et d’utiliser le raccourci clavier CTRL-’ (la touche à côté du 0). Ce raccourci agit
comme un interrupteur et commente/décommente les lignes sélectionnées. Il est réglé pour ajouter
ou retirer une paire ## et n’interfère ainsi pas avec les commentaires simples #.
L’avantage de la deuxième version est qu’une pression sur CTRL-’ permet d’enlever le commentaire
et une deuxième pression permet de le remettre.
CTRL-’ CTRL-’
Les variables sont les éléments clés d’un langage de programmation. On conçoit une variable comme
un tiroir contenant une information. La valeur de la variable peut être appelée à changer. Pour se
référer à la variable, on y donne un nom.
2. Il faut faire attention aux majuscules et aux minuscules. Par exemple X et x sont deux noms de
variables différents (cette contrainte est générale à toute programmation HTML).
En langage JavaScript et en Python, une variable est automatiquement créée quand on lui assigne
une valeur. Par exemple, la commande
nomVariable = valeurVariable
Ainsi, si dans le contenu, on retrouve le nom d’une variable, il faut penser qu’il s’agit du contenu de
cette variable. Voici un exemple qui illustre bien ce phénomène.
x=5x=x+1
La première ligne crée la variable x (si elle n’est pas déjà créée) et y assigne la valeur 5. Puis la
deuxième ligne prend la valeur qui se trouve dans la variable x, y ajoute 1 et assigne le résultat dans
la variable x. Voici l’image mentale de la deuxième ligne qu’il faut avoir :
Remarque
Les assignations de variables se font dans la mémoire de l’ordinateur. À moins d’utiliser une
commande d’impression (document.write en JavaScript ou print en Python), on ne voit pas les
assignations se produire. En Python, il y a exception dans la fenêtre Python Interpreter, où la
commande x permet d’afficher la valeur de x.
Il y a deux types de variables numériques en JavaScript et en Python : les entiers et les nombres à
virgule flottante. En Python, il y a un troisième type : les entiers longs (qui peuvent être
arbitrairement grands).
Fonctions de conversion
Les fonctions parseInt et parseFloat sont des fonctions JavaScript qui permettent de convertir une
variable en un nombre entier ou à virgule flottante respectivement. Leurs équivalents Python sont int
et float.
Pour Python, il faut utiliser la commande import math afin d’accéder à toutes les commandes ci-
dessous qui commencent par math. (en minuscule). Pour JavaScript, il suffit d’inscrire Math. (avec la
majuscule) avant ces commandes.
Nom Maths JavaScript Python 2.6
division entière ·
quotient Math.floor(a/b) a/b
JavaScript Python
JavaScript Python
Math.E math.e
On peut assigner à une variable une chaîne de caractère. Il s’agit d’un texte entouré de guillemets ("
ou ’, sans mélange).
En JavaScript, on doit utiliser le caractère spécial \ pour afficher des caractères qui prêtent à
confusion (\’ pour l’apostrophe et \\ pour afficher \). En Python, il faut aussi utiliser \’ pour
l’apostrophe.
L’opérateur + permet aussi de concaténer deux chaînes de caractères. Par exemple "bon"+"jour"
donne "bonjour".
En JavaScript, remarquons que 21+" pommes" donne "21 pommes", car elle transforme le nombre
21 en chaîne de caractères.
Par contre en Python, une telle opération provoque une erreur. Il faut d’abord transformer le
nombre 21 en chaîne de caractères à l’aide de la fonction str. La commande sera ainsi str(21) +
"pommes".
En Python, il faut commencer le programme par la ligne suivante, afin que les caractères accentués
et spéciaux soient bien reconnus.
En JavaScript, on effectue un saut à la ligne en utilisant <br /> (ou <br> qui n’est pas le dernier
standard mais qui marche encore). En JavaScript, lorsqu’il y a plusieurs espaces à la suite, seul une
espace est reportée (en fait cela provient du langage HTML), mais les espaces insécables s’ajoutent
en utilisant (une autre commande HTML).
En Python, on effectue un saut à la ligne à l’affichage en utilisant \n. On peut effectuer un saut à la
ligne dans le code en utilisant \. La commande \n\ permet de faire un saut de ligne à l’affichage et
dans le code. De plus, les espaces dans les chaînes de caractères sont tous reportés à l’affichage. En
Python, le code suivant
Salut = "Ceci est une chaîne plutôt longue\n\ contenant plusieurs lignes \
On peut assigner à une variable une liste d’éléments. Il s’agit d’une énumération d’éléments séparés
par une virgules et encadrée par des crochets.
liste1 = range(1,15) liste2 = Python permet de créer des listes de nombres grâce à la
range(20,100,10) liste3 = commande range. Voici trois exemples de tels listes.
range(99,70,-2)
Voici les définitions équivalentes de ces listes qui s’arrêtent
avant la deuxième borne.
liste1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14] liste2 = [20, 30, 40, 50, 60, 70, 80, 90] liste3 = [99,
97, 95, 93, 91, 89, 87, 85, 83, 81, 79, 77, 75, 73, 71]
En JavaScript, il faut programmer soi-même la fonction range. De plus, avant de modifier une liste,
appelée liste, élément par élément (plutôt qu’avec les crochets), il faut taper la ligne liste = Array(n)
où n est le nombre d’élément de la liste.
Nom JavaScript Python Un opérateur de comparaison associe à une
proposition une valeur de vérité : (true
est égal à a == b a == b
pour vrai et false pour faux). Cette valeur
n’est pas égal à a != b a != b de vérité peut être assignée à une variable,
dite booléenne. L’opérateur de négation
est plus grand que a>b a>b renverse les valeurs de vérité (vrai devient
est plus petit que a<b a<b faux et vice-versa).
est plus petit ou égal à a <= b a <= b En JavaScript le XOR (ou exclusif) paraît
manquant, mais on peut utiliser ˆ qui livre 1
ET logique a && b a and b (au lieu de true, mais qui est considéré
OU logique a || b a or b comme tel) ou 0 (au lieu de false, mais qui
est considéré comme tel).
négation (NOT) !a not a
En Python, le XOR (ou exclusif) est donné
par l’opérateur ^.
Cas particuliers
Pour JavaScript, le test 2 == "2" donne vrai. Par contre 2 === "2" donne faux.
Pour Python, le test 1 == 1.0 donne vrai. Par contre 1 is 1.0 donne faux.
Code JavaScript
Code Python
Exemple
x=5 x = 5 if x == 5 :
if (x == 5)
Code JavaScript
} else
Code Python
Exemple
x=5
if (x == 5)
Si (C1), alors (1er bloc d’instructions), sinon si (C2), alors (2e bloc d’instructions), sinon (3e bloc
d’instructions). On peut bien sûr ajouter d’autres conditions «sinon si», ce qui ne change pas le
schéma (à part le prolonger sur la droite).
Code JavaScript
if (condition1)
} else
Code Python
if condition1 :
##code qui sera exécuté lorsque toutes les conditions ##précédentes sont
fausses
Exemple en JavaScript
x=5
if (x == 5)
else if (x == 6)
} else {
} document.write("Hors du if")
Exemple en Python
x = 5 if x == 5 :
Les boucles servent à exécuter plusieurs instructions un certains nombres de fois, prédéfini ou pas.
While signifie tant que. Ainsi la commande suivante exécute le code tant que la condition est vraie. Si
au départ, la condition est fausse, alors le code n’est pas exécuté.
Code JavaScript
Code Python
while condition : ##double-points obligatoire ##code qui sera exécuté tant que la
condition est vraie
Exemple
Dans cet exemple, on construit la somme des nombres de 1 à 10, 10 non compris.
somme = 0 k = 1
{ somme = somme + k
For signifie pour. Cette commande dépend d’une variable que l’on initialise au début de la
commande. Ensuite, tant qu’une certaine condition est vraie, on exécute le code, puis la variable
subit une incrémentation.
Code JavaScript
// dans cette boucle for, la variable utilisée s’appellera k for (k = valeur de départ; k <
valeur de fin; k = k + incrémentation)
Code Python
## dans cette boucle for, la variable utilisée s’appellera k for k in range(valeur de
départ, valeur de fin, incrémentation) :
Exemple
Voici une autre façon de construire la somme des nombres de 1 à 10, 10 non compris.
somme = 0
{
somme = 0 for k in range(1,10,1) :
somme = somme + k
somme = somme + k print("la somme
} document.write("la somme vaut " + somme) vaut", somme)
Une fonction est un morceau de code, éventuellement dépendant de certaines variables, qui peut
être exécutée directement à l’aide de son nom. Cela permet
1. de ne pas retaper plusieurs fois des bouts de code qui seraient très semblables;
Les fonctions peuvent être mises à disposition d’autres programmes, voire même d’autres
programmeurs. Leur nom doit commencer par une lettre, aucune lettre accentuée ou caractère
spécial n’est permis, sauf «_». Attention à bien distinguer les majuscules des minuscules.
Code JavaScript
Code Python
Si la fonction est sans argument, elle doit tout de même comporter des parenthèses.
Un premier exemple
Voici une fonction sans argument qui affiche un message d’alerte.
function danger()
def danger() :
On constate que les parenthèses doivent être présentes, même s’il n’y a pas d’argument à l’intérieur.
La seule manière d’utiliser cette fonction est d’y faire appel directement afin d’afficher le message à
l’écran.
Un deuxième exemple
Voici une fonction qui qui renvoie le triple du nombre passé en argument.
function triple(x)
} t=3*x return t
Dans le code ci-dessus, la variable t est une variable locale : elle est créée durant l’exécution de la
fonction et détruite dès que la fonction a fini son exécution.
Voici deux utilisations de la fonction triple si x est une variable à laquelle une valeur est déjà assignée
:
On peut mettre les scripts dans un fichier à part de la manière suivante. L’avantage de cette manière
de procéder est que le script peut être utilisé dans d’autres scripts de manière simple et efficace.
Cela simplifie la lecture des scripts et cela permet aussi de ne modifier qu’un seul fichier dans le cas
où le code est amélioré!
Code JavaScript
Le fichier original est un fichier HTML. Les scripts sont stockés directement en JavaScript à part : cela
permet d’éviter d’utiliser les balises HTML chaque fois qu’on programme en JavaScript.
<html> Voici le fichier : document.write("ce script est
<body> externe") Voici le code HTML :
<script src=""></script>
</body>
</html>
Code Python
Pour signaler à Python d’utiliser le code se trouvant dans le fichiers , il suffit d’insérer la ligne
suivante au début du programme principal.
Un programme requiert bien souvent une information de la part de l’utilisateur. Le code suivant
(JavaScript à gauche et Python à droite) pose une question à l’utilisateur. La réponse à cette question
sera stockée comme une chaîne de caractères dans la variable reponse.
Exemple
// saut à la ligne
document.write("<br />")
## saut à la ligne
print("\n")
// onerror est une commande qui permet de récupérer les erreurs onerror=messageErreur
function messageErreur(msg,url,line)
txt = "Il y a une erreur sur cette page :\n\n" //la commande \n txt = txt + "Erreur: " + msg + "\
n" //permet d’effectuer txt = txt + "URL: " + url + "\n" //un saut de ligne
//dialogue
alert(txt)
Il est conseillé d’enregistrer ce script dans un fichier que l’on peut appeler par la ligne de code HTML
suivante (à insérer avant tout script dans une page HTML) :
<script src=""></script>
Alors qu’en JavaScript, les commandes parseInt et parseFloat ne créent pas d’erreurs fatales
lorsqu’on essaie de transformer du texte qui n’est pas un nombre en un nombre (en fait elles
renvoient NaN, qui signifie not a number (pas un nombre)), leurs équivalents en Python déclarent
une erreur et stoppent l’exécution du programme.
Afin d’éviter ce soucis, on utilise les commandes try et except dont l’utilisation est éclaircie ci-
dessous.
else :
Voici un module externe appelé contenant une fonction qui permet d’afficher une image dans une
page HTML et de changer cette image à chaque clic de souris.
// <img src=""
// name="cycle1"
// onclick=’javascript:change("cycle1",["",
// "",
// "",
// ""])’ />
//
// La source src DOIT se trouver dans le tableau tableauImages // (en fait les images vont faire un
cycle à partir de src // quelque soit la position de l’image src dans le tableauImage).
// Les images DOIVENT toutes être dans un sous-répertoire appelé "img". // La valeur name DOIT
être la même que celle de la balise <img>.
function change(nom,tableauImages) {
//////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////
// (il faut donc que l’image src de la balise <img> se trouve dans ce tableau) var nomFichier =
"img/" + tableau[tableau.length-1]
///////////////////////////////////////////////////////////////////////
}
. HyperText Markup Language
1582