You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
247 lines
11 KiB
247 lines
11 KiB
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<title>La programmation avec Jean-Lou</title>
|
|
<link rel="stylesheet" type="text/css" href="../css/style.css">
|
|
<link rel="stylesheet" type="text/css" href="../css/prism.css">
|
|
</head>
|
|
<body>
|
|
<nav>
|
|
<ul style="width: 1000px;">
|
|
<li>
|
|
<a href="../Index.html">Accueil</a>
|
|
</li>
|
|
|
|
<li class="menu-deroulant">
|
|
<a href="#"class="ho_menu">Languages</a>
|
|
<ul class="sous-menu">
|
|
<li><a href="python.html">Python</a></li>
|
|
<li><a href="c.html">C</a></li>
|
|
<li><a href="c++.html">C++</a></li>
|
|
</ul>
|
|
</li>
|
|
|
|
<li class="menu-deroulant">
|
|
<a href="#" class="ho_menu">Rasberry Pi</a>
|
|
<ul class="sous-menu">
|
|
<li><a href="../rpi/histoire.html">Histoire</a></li>
|
|
<li><a href="../rpi/os.html">Mettre un os</a></li>
|
|
<li><a href="../rpi/lecteur.html">lecteur NFC</a></li>
|
|
</ul>
|
|
</li>
|
|
|
|
<li><a href="../interpreteur/interpreteur.html">Interpréteur</a></li>
|
|
</ul>
|
|
</nav>
|
|
|
|
<div class="aligne">
|
|
<div class="article">
|
|
<h1 id="ancre1">Bienvenue sur la page de <a href="https://www.python.org/">Python</a> !</h1>
|
|
|
|
<img id="img_python" src="../images/python.png">
|
|
|
|
<h2>Le <a href="https://www.python.org/">Python</a> qu'est ce que c'est ?</h2>
|
|
|
|
<p><a href="https://www.python.org/">Python</a> est le langage de programmation open source le plus employé du monde.<br>
|
|
Ce langage c’est propulsé en tête de la gestion d’infrastructure,<br>
|
|
d’analyse de données ou dans le domaine du développement de logiciels.<br>
|
|
<br>
|
|
En effet, parmi ses qualités, Python permet notamment aux développeurs de se concentrer
|
|
<br> sur ce qu’ils font plutôt que sur la manière de le faire. Il a libéré les développeurs <br>
|
|
de contraintes fortes qui occupaient leur temps avec les langages plus anciens.<br> <br>
|
|
Ainsi, développer du code avec Python est plus rapide qu’avec d’autres langages.<br>
|
|
Une de ses forces est une implémentation du code simple, claire, une syntaxe épurée.<br>
|
|
De nombreuses librairies sont disponibles,couvrant la plupart des domaines, de la couche réseau à l'application utilisateur.<br>
|
|
<br></p>
|
|
<p id="ancre2">Il est très accessible pour les débutants, à condition de lui consacrer un peu de temps
|
|
<br>pour la prise en main. De nombreux tutoriels sont d’ailleurs disponibles pour l’étudier sur des sites Internet spécialisés ou sur des comptes Youtube. Sur les forums d'informatique,
|
|
<br> il est toujours possible de trouver des réponses à ses questions, puisque <br>
|
|
beaucoup de professionnels l'utilisent. </p>
|
|
|
|
<h2>Comment et par qui a été créé le Python ?</h2>
|
|
|
|
<p>En 1989, profitant d’une semaine de vacances durant les fêtes de Noël,<br>
|
|
Guido van Rossum utilise son ordinateur personnel pour écrire la première version du langage.<br>
|
|
Fan de la série télévisée Monty Python's Flying Circus, il décide de baptiser ce projet Python.<br>
|
|
Il s’est principalement inspiré d’ABC, par exemple pour l’indentation comme syntaxe<br>
|
|
ou les types de haut niveau mais aussi de Modula-3 pour la gestion des exceptions, du langage C et des outils UNIX</p>
|
|
|
|
|
|
<p class="creapythonom">Guido van Rossum </p>
|
|
<img id="ancre3" src="https://upload.wikimedia.org/wikipedia/commons/thumb/e/e2/Guido-portrait-2014-drc.jpg/1280px-Guido-portrait-2014-drc.jpg" class="creapython">
|
|
|
|
|
|
<h2>Pourquoi est-il beaucoup utilisé ?</h2>
|
|
|
|
<p>Python a été conçu pour être un langage lisible. Il vise à être visuellement épuré. <br>
|
|
Par exemple, il possède moins de constructions syntaxiques que de nombreux langages <br>
|
|
structurés tels que C, Perl, ou Pascal.<br>
|
|
<br>
|
|
Python fait partie de la grande famille des langages interprétés. Cela assure une grande compatibilité d'un même programme entre systèmes d'exploitations différents (Microsoft Windows, Linux, ...).<br>
|
|
Il peut toutefois à l'aide de programmes externes être compilé.<br>
|
|
<br>
|
|
Les blocs sont identifiés par l'indentation, au lieu d'accolades comme en C ou C++,<br>
|
|
ou de begin ... end comme en Pascal ou Ruby. Une augmentation de l'indentation marque le début d'un bloc, et une réduction de l'indentation marque la fin du bloc courant.<br>
|
|
L'indentation de base en Python est de 4 espaces. <br>
|
|
<br>
|
|
Le script suivant peut vous montrer le principe de l'indentation : </p>
|
|
|
|
<div id="script">
|
|
<script type="text/javascript" src="../js/prism.js"></script>
|
|
<pre><code id="ancre4" class="language-python">from PIL import Image
|
|
from PIL.ExifTags import TAGS, GPSTAGS
|
|
|
|
lat = 0
|
|
long = 0
|
|
image1= Image.open('photo.jpg')
|
|
info = image1._getexif()
|
|
print(info)
|
|
geolocalisation={}
|
|
|
|
|
|
exif_data={}
|
|
for tag, value in info.items():
|
|
key = TAGS.get(tag, tag)
|
|
if key =="GPSInfo":
|
|
gpsdata={}
|
|
for t in value:
|
|
sub=GPSTAGS.get(t,t)
|
|
gpsdata[sub]=value[t]
|
|
exif_data[key]=value
|
|
else:
|
|
exif_data[key]=value
|
|
print(exif_data)
|
|
|
|
for valeur in exif_data.values():
|
|
print("latitude: "+valeur[1])
|
|
for i in {0,1,2}:
|
|
print(valeur[2][i][0])
|
|
print("longitude: "+valeur[3])
|
|
for i in {0,1,2}:
|
|
print(valeur[4][i][0])
|
|
|
|
lat = valeur[2][0][0]+valeur[2][1][0]/60+valeur[2][2][0]/3600
|
|
|
|
lon = valeur[4][0][0]+valeur[4][1][0]/60+valeur[4][2][0]/3600
|
|
|
|
print(f"latitude : {lat}")
|
|
print(f"longitude : {lon}")
|
|
</code></pre>
|
|
</div>
|
|
|
|
|
|
<h2>Quelques examples de fonctions basiques</h2>
|
|
|
|
<p class="textprint">Tout d'abord, un interpréteur python est disponible sur ce site dans l'onglet <a href="Interpreteur.html">"Interpréteur"</a>. Si vous n'avez pas python sur votre machine ou pas d'éditeur sous la main vous pouvez utliser celui-ci.<br><br>Pour une première fonctions je vais vous montrez comment faire afficher un message.<br>
|
|
Pour cela nous allons utilisé la fonction <a href="https://apcpedagogie.com/la-fonction-print-en-python/" class="print">print</a> avec le fameux "Hello world".<br>
|
|
Rendez-vous sous IDLE ou dans l'onglet <a href="Interpreteur.html">"Interpréteur"</a> puis tapez la ligne ci-dessous, puis validez par un appui sur la touche "Entrée" du clavier.</p>
|
|
|
|
<div id="script">
|
|
<script type="text/javascript" src="../js/prism.js"></script>
|
|
|
|
<pre><code class="language-python">>>>Print("Hello World") </code></pre>
|
|
</div>
|
|
|
|
<p>En éxécutant ce programme nous remarquons que "Hello world" est affiché sur la console</p>
|
|
|
|
<div id="script">
|
|
<script type="text/javascript" src="../js/prism.js"></script>
|
|
|
|
<pre><code class="language-python">>>>Print("Hello World")
|
|
Hello World
|
|
>>>
|
|
</code></pre>
|
|
</div>
|
|
|
|
<p>Pour l'instant vous avez exécuté une ligne de programme dans une console.<br>
|
|
Le second programme vous montrera comment créer un programme en fichier et l'éxécuter.<br>
|
|
<br>
|
|
<br>
|
|
Sous IDLE, cliquez sur "File" puis "New File"</p>
|
|
|
|
<img src="https://www.editions-eni.fr/Open/download/f9e47575-011b-4044-832a-74aad7bf6cf2/images/01RI16.png" class="creapscript">
|
|
|
|
<p><br>Une nouvelle fenêtre s'ouvre:</p>
|
|
|
|
<img src="https://www.hashcollision.org/hkn/python/idle_intro/new_window_made.jpeg" class="feprogramme">
|
|
|
|
<p>Tapez votre programme dans celle-ci,<br>
|
|
puis enregistrez le avec l'extension ".py". Cette étape est importante,ne changez pas l'extension.<br>
|
|
Elle indique au système d'exploitation qu'il s'agit d'un programme écrit en Python.<br>
|
|
Une fois saisi, cliquez sur "Run" puis "Run Module".<br>
|
|
Le programme s'éxècute alors automatiquement.</p>
|
|
|
|
<img id="ancre5" src="https://www.hashcollision.org/hkn/python/idle_intro/trying_to_run_script.jpeg" class="exprogramme">
|
|
|
|
<h2>Votre premier programme</h2>
|
|
|
|
<p><br>Votre premier "vrai" programme calculera l'aire d'un rectangle. Comme vous le savez, c'est une tâche fastidieuse que vous exécutez tous les jours!<br>
|
|
<br>
|
|
L'algorithme est le suivant:<br>
|
|
- L'utilisateur saisie la longeur du rectangle dans la variable "longueur"<br>
|
|
- L'utilisateur saisie la largeur du rectangle dans la variable "largeur"<br>
|
|
- Le programme stockera dans une variable "aire" le résultat de la multiplication<br>
|
|
- Il affichera le résultat à l'écran avec un arrondi à 2 décimales<br>
|
|
<br>
|
|
<br>
|
|
Tous d'abord nous allons commencer par demander a l'utilisateur de rentrer la valeur <br>
|
|
de la longueur et de la largeur du rectangle.<br>
|
|
<br>
|
|
Commencez par demander a l'utilisateur de saisir les longueur et largeur du rectangle.<br>
|
|
La fonction "input" permet simplement de communiquer avec l'utilisateur.<br>
|
|
En une seule ligne elle énonce l'objet de ce qu'elle attend et récupère l'information dans une variable.<br>
|
|
Par défaut la fonction "input" stocke l'information sous forme de chaîne de caractère. Le calcul d'une aire se fait avec des nombres,
|
|
il faut donc utiliser une fonction de conversion,qui est float.<br>
|
|
</p>
|
|
|
|
<div id="script">
|
|
<script type="text/javascript" src="../js/prism.js"></script>
|
|
<pre><code class="language-python">largeur = float(input("Veuillez entrer la largeur du rectangle : "))
|
|
longueur = float(input("Veuillez entrer la longueur du rectangle : "))</code></pre>
|
|
|
|
</div>
|
|
|
|
<p>Puis on initialise une variable "aire" qui sera le calcul de l'aire du rectangle ( largeur * longueur)</p>
|
|
|
|
<div id="script">
|
|
<script type="text/javascript" src="../js/prism.js"></script>
|
|
<pre><code class="language-python">largeur = float(input("Veuillez entrer la largeur du rectangle : "))
|
|
longueur = float(input("Veuillez entrer la longueur du rectangle : "))
|
|
|
|
aire = largeur * longueur</code></pre>
|
|
|
|
</div>
|
|
|
|
<p>Nous teminons se programme par ajouter la ligne qui permet d'afficher la variable "aire".<br>
|
|
Pour cela nous utiliserons la même fonction que ci-dessus <a href="https://apcpedagogie.com/la-fonction-print-en-python/" class="print">print</a>, avec la variable aire.</p>
|
|
|
|
<div id="script">
|
|
<script type="text/javascript" src="../js/prism.js"></script>
|
|
<pre><code class="language-python">largeur = float(input("Veuillez entrer la largeur du rectangle : "))
|
|
longueur = float(input("Veuillez entrer la longueur du rectangle : "))
|
|
|
|
aire = largeur * longueur
|
|
|
|
print("L'aire du rectangle est : ", aire)</code></pre>
|
|
</div>
|
|
|
|
<p>Voila, vous venez de terminer votre premier programme.<br>
|
|
Il ne vous reste plus qu'a l'exécuter.<br>
|
|
</p>
|
|
|
|
</div>
|
|
|
|
<div class="partie">
|
|
<nav id="navigation">
|
|
<li><a class="lien" href="#ancre1">Python qu'est ce que c'est ?</a></li>
|
|
<li><a class="lien" href="#ancre2">Création de Python</a></li>
|
|
<li><a class="lien" href="#ancre3">Pourquoi un tels succés ?</a></li>
|
|
<li><a class="lien" href="#ancre4">Examples de fonctions basiques</a></li>
|
|
<li><a class="lien" href="#ancre5">Votre premier programme</a></li>
|
|
</nav>
|
|
</div>
|
|
<script src= "https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
|
|
<script src="../js/scroll.js"></script>
|
|
</body>
|
|
</html>
|
|
|