Accueil Floss Manuals francophone

Initiation à Python

Introduction

Les langages informatiques sont nombreux, très nombreux. Un jour les ordinateurs parleront peut-être même plus de langues que les humains, pardon les humains pourront parler en plus de langues avec les ordinateurs qu'entre eux-mêmes.

Si vous vous lancez dans une première expérience de programmation remarquez que l'on parle de langage et non pas de langues, mais en fait c'est bien le même effort qui est à l'oeuvre : communiquer. Dans un cas, vous communiquez avec un congénère, dans l'autre avec un ordinateur.

L'avantage de communiquer avec un congénère c'est la ressemblance qui vous unit à lui et qui fait que lorsque vous souriez vos, vos semblables comprennent que c'est normalement positif (ça dépend du type de sourire mais la variation entre honnête et narquois ne trompe en général pas longtemps).

L'avantage de communiquer avec un ordinateur, c'est qu'il connaît déjà toute sa langue sur le bout des doigts. Rien à lui expliquer au niveau dictionnaire, grammaire. En revanche cet ami à l'inconvénient d'être entêté et de ne tolérer aucune erreur. Sans quoi, il ne comprend pas. l'intelligence de l'ordinateur s'arrête aux règles qu'on lui a inculquées et c'est bien pour cela que l'on programme, pas pour jacasser autour d'un verre, mais bien lui inculquer de nouvelles tâches qu'il réalisera à notre place par la suite. L'ordinateur est un robot et le langage de programmation le moyen de lui parler.

Au moins la relation est claire :

  • vous pourrez être très directif avec l'ordinateur « fais-ci », « fais-ça » et il en vous crachera pas à la figure
  • vous pourrez lui faire faire ce que vous voulez « mets du rouge, du vert, du bleu et multiplie par 12 si la couleur est inférieure à celle de mon smoking »

En revanche, il vous dira explicitement quand vos indications sont trop floues, peu précises, mal coordonnées…Vous récoltez la responsabilité de votre pouvoir.

Python, comme son nom l'indique, est un langage malléable qui repose sur une base puissante. Il est considéré comme un langage facile à apprendre parce qu'il y a une grande clarté dans l'expression en python (comparé à d'autres évidemment). Python est à la croisée de plusieurs besoin, à mi-chemin entre différentes technologies, s'avère prêt à être employé dans de nombreux contextes avec une grande rapidité d'adaptation. Python est un compromis parfait pour ceux qui ne veulent pas multiplier les langages.

Quels sont les autres langages ?

On regroupe les langages selon plusieurs catégories qui sont mobiles selon les besoins. Vous en connaissez déjà certainement, au moins de nom : HTML, CSS, Java (-script), C, C++, Qt, GTK, etc*.

 

les langages interprétés / compilés

L'une des plus grande différence entre les langages tient dans leur fonctionnement au moment de l'exécution. Les langages compilés sont autonome et peuvent fonctionner d'eux-mêmes, mais seulement sur les environnements pour lesquels ils sont conçus. Les langages interprétés ont toujours besoin d'un interpréteur pour fonctionner, ils sont cependant en général plus portable. Les défenseurs du compilé mettent en général en avance les performances (rapidité d'exécution…) et ceux de l'interprété l'efficience (rapidité de création…).

les langages déclaratifs / structurés

Les langages déclaratifs sont parmi les plus utilisés par le grand public : on y comptera le HTML et le CSS ou des langages de ce type. Dans ce type de langage, toutes les actions sont effectuées quoi qu'il arrive, sans ouvrir de possibilité selon les contextes. Les langages structurés au contraire peuvent laisser plus de possibilité lors de l'exécution mais en son d'autant plus compliqués à utiliser.

Python est un langage structuré, de nature interprété même si des procédés permettent de le compiler. Nous partirons du principe que vous souhaitez réaliser des projets de plus ou moins grande envergure et que python est peut être le langage qui vous y aidera.

Pour quoi faire si compliqué ?

C'est souvent la remarque des débutants en programmation, c'est peut-être déjà la vôtre, et par expérience elle ressort à chaque difficulté. Je préfère que l'on prenne les choses de l'autre côté. Les langages informatiques répondent à des besoins, et ces besoins peuvent s'exprimer de façon différentes. Après tout, pourquoi ne parle-ton pas tous anglais ou chinois, ce serait plus simple.

La seconde chose, ce n'est pas la programmation qui est compliqué, c'est ce que l'on souhaite faire ou dire. Vous limitez vous souvent à des phrases sujet-verbe-complément ? Certainement pas. En programmation, c'est identique : il y a des règles simples, mais en général, on en veut plus. En clarifiant bien les objectifs et en préparant bien la façon d'y arriver, cela rend en général les choses beaucoup plus faciles.

* (désolé etc n'est pas un langage, pas encore, un jour peut-être)