Introduction à Python
L’utilisation du langage
Le langage de programmation Python a été inventé dans les années 90 pour automatiser des tâches simples, mais fastidieuse. La philosophie du Python c’est de mettre l’accent sur la lisibilité du code. Il s’éloigne du code machine pour être très facilement lisible par l’Homme, au coût de performance réduite. Cependant, l’une de ses plus grandes forces est qu’il possède une très grande bibliothèque standard. Cette bibliothèque fournit des outils adaptés à de nombreuses tâches. Souvent, ces bibliothèques sont elles-mêmes écrites en langage C, mais le langage Python permet de manipuler directement celles-ci. Cela permet d’obtenir un bon compromis où les opérations lourdes sont alors exécutées dans un environnement optimisé pour la machine, tout en gardant une écriture plus simple pour l’utilisateur du langage.
Python est particulièrement répandu dans le monde scientifique, et possède de nombreuses bibliothèques optimisées destinées au calcul numérique, à l’intelligence artificielle, ou même à la création de sites web. Il gère automatiquement la création et la suppression de la mémoire, mais cette gestion à un coût non négligeable sur les performances. C’est pourquoi les applications nécessitant des performances temps réel ou nécessitant une empreinte mémoire faible sont développées dans le langage C. On parle alors d’environnement contraint.
Les instructions élémentaires
L’instruction de input permet à l’utilisateur de rentrer des valeurs au clavier pour qu’elles soient utilisées par le programme. Dans l’autre sens, l’instruction print, permet au programme de communiquer des valeurs à l’utilisateur en les affichant à l’écran.
Les conteneurs
En langage Python, les variables n’ont pas besoin d’être déclarées comme respectant un type particulier. De plus, une variable peut changer de type à tout moment. Toutefois, il faudra parfois spécifier clairement le type lorsqu’il est ambigu. Lorsqu’une variable change de type, il peut y avoir une perte de précision. Pour changer le type d’une variable, x = nouveauType(Valeur)
. En python, du fait que les variables ne possèdent pas de type à proprement parler, la division de deux nombres entiers peut devenir un nombre à virgule.
type | description | taille |
---|---|---|
int | un nombre entier | 2^{31} |
float | un nombre réel | 10^{38} |
str | une chaine de caractère | Variables |
Les opérations élémentaires
Dans tous les langages de programmation, il est possible d’utiliser les opérateurs mathématiques pour évaluer une expression. Les quatre opérations élémentaires sont naturellement supportées sur toutes les machines. Les symboles utilisés sont simplement le +
pour l’addition, le -
pour la soustraction, le *
pour la multiplication et le /
pour la division.
Il existe également l’opération %
pour obtenir le reste de la division entière, et enfin l’opération de décalage de bits vers la gauche <<
ou vers la droite >>
. Concernant l’opération mathématique pour élever un nombre à une puissance, c’est quelque chose qui est considéré comme élémentaire. Il faut utiliser le signe **
. Pour rappel, élevé à un nombre, à une puissance inférieur entre 0 et 1, correspond à récupérer la racine du nombre. Par exemple, 7**(1/2)
correspond donc à la racine carrée de 7.
La séquence d’instruction
Les bibliothèques contiennent toutes les fonctions élémentaires pour écrire vos programmes. Elles doivent être spécifiées tout en haut du programme. Il existe un grand nombre de bibliothèques, nous en utiliserons d’autres plus tard. Il est possible ensuite d’écrire à la suite directement les instructions.
# Ceci est un commentaire. # La ligne ci-dessous est une inclusion d'une bibliothèque : import math # La ligne ci-dessous est une instruction : print("Hello World!")
Dans l’exemple ci-dessous, le code permet d’additionner deux variables. Tout comme dans notre algorithme, on distingue la phase d’initialisation où l’utilisateur est invité à entrer les valeurs. La phase de traitement où les nombres sont additionnés. La dernière partie affiche le résultat à l’utilisateur.
a = input("Entrez le premier nombre: ") b = input("Entrez le second nombre: ") c = float(a) + float(b) print("Le résultat vaut: ", c)