Principes de base

1 ligne = 1 instruction

Dans certains langages instructions sont séparées par des ; et les blocs d'instructions sont entourés par des accolades { }.

En Python pour passer à l'instruction suivante, il suffit de passer à la ligne, 1 ligne = 1 instruction !

Bloc = utilisation du signe de ponctuation "deux points"

Certaines instructions permettent l'exécution de plusieurs instructions dans un bloc :

  • le début du bloc est marqué par le signe de ponctuation "deux points"

  • les instructions qui doivent s'exécuter dans le bloc sont signalée par une indentation (décalage vers la gauche)

  • pour exécuter des instructions en-dehors du bloc, il suffit de supprimer le décalage vers la gauche

Utilisation du # pour insérer des commentaires (ce qui est derrière n'est pas considéré comme du code). Cela peut aider à comprendre ce qui est tapé.

Exemple

1
# appliquer la TVA à 20 % à un Prix HT
2
prixht = 100                  # j'affecte la valeur 100 à la variable prixht (prix Hors Taxe)
3
tva = 20/100                  # j'affecte la valeur 20/100 à la variable tva
4
prixttc = prixht+prixht*tva   # je calcule le Prix TTC (variable) prixttc = Prix HT + Prix HT x 20%
5
print(prixttc)                # j'affiche le Prix TTC

Module/Bibliothèque/Package = ajouter des fonctions supplémentaires

Les modules des programmes en Python qu'il est possible d'appeler pour récupérer des fonctions qui n'existent pas dans Python à la base.

Certaines sont préinstallées dans Edupython. D'autres seront à installer (méthode pip ou conda) avant de pouvoir utiliser le contenu.

Principaux packages présents sur la version 3.0 :

  • Module lycée

  • Calcul numérique : Numpy (version 1.18.3) et Scipy (version 1.4.1)

  • Sorties graphiques : Mathplotlib (version 3.1.3)

  • Calcul formel : Sympy (version 1.5.1)

  • Traitement d'image s: PIL (Pillow 7.0.0) et Open CV (Version 4.2.0)

  • Liaison série : Serial (version 2.7)

  • Base de données : SQLite3 (version standard) et mysql (version 8.0.13)

  • Traitement de données : Pandas (version 1.0 3)

  • Réalisation de jeux : Pygame (version 1.9.4)

  • Autres : pyknon (musique), Nanpy (Arduino), Follium (cartes), scikit-learn (IA)...

Exemple

1
#---------BIBLIOTHEQUES/MODULES---------
2
import xlrd
3
import folium
4
import webbrowser
5
6
#----------PROGRAMME PRINCIPAL----------
7
# Récupérer les données dans le fichier excel .xls
8
leFichier = 'Donnees_Carte_ex.xls'
9
document = xlrd.open_workbook(leFichier)
10
feuille = document.sheet_by_index(0)
11
12
# Affichage informations du fichier dans la console Python
13
print('----------------Informations Fichier----------------')
14
print('Nom du fichier = ', leFichier)
15
nom = feuille.name
16
print('Nom de la feuille = ', nom)
17
n= feuille.nrows
18
ndonnees = n-1
19
print('Nombre de données = ', ndonnees)
20
21
# Création d'une carte à partir des données du fichier Microsoft Excel
22
centre = [46.548312, 3.287667]
23
carte = folium.Map(location=centre,zoom_start=11)
24
for i in range(1,n):
25
    etiquette = feuille.cell_value(i,0)
26
    longitude = feuille.cell_value(i,1)
27
    latitude = feuille.cell_value(i,2)
28
    donnee = feuille.cell_value(i,3)
29
    lieu = [longitude, latitude]
30
    # Ajout marqueur aux coordonnées avec légende, couleur à la carte
31
    folium.Marker(location=lieu, popup=etiquette, icon=folium.Icon(color='green')).add_to(carte)
32
    # Ajout périmètre donnée(s) à la carte
33
    rayon = donnee*1000
34
    folium.Circle(lieu, radius = rayon, fill=True, color='orange').add_to(carte)
35
36
# enregistrement et affichage de la carte
37
nomcarte = nom+'.html'      
38
carte.save(nomcarte)        
39
webbrowser.open(nomcarte)