Skip to content

Bases de Python

Dans MicroPython, il y a :

  • Micro pour micro-contrôleur,
  • Python pour langage Python.

Avant toute chose, indépendemment de la carte à micro-contrôleur utilisée, Micropython, c'est d'abord et avant tout du Python. Nous allons donc commencer par apprendre les bases du langage Python. Et comme vous allez le voir, de façon ludique et interactive, ce que permet le mode interpréteur du langage MicroPython. Mais vous allez aussi apprendre à écrire vos premiers scripts Python.

C'est un tuto de Micropython, un vrai !

Bien qu'en apprenant MicroPython vous apprenez vraiment par la même occasion le Python, ici on ne triche pas : on vous apprend MicroPython en utilisant des exemples testés dans l'interpréteur installé sur la carte Pi Pico (ou n'importe quelle autre carte MicroPython). Et vous allez d'ailleurs pouvoir tout refaire vous-même avec votre carte. Idem pour les codes d'exemples qui seront exécutés sur la carte MicroPython.

Dans l'interpréteur


"Hello world !" : Lancer l'interpréteur MicroPython et saisir votre première commande

Savoir lancer l'interpréteur et saisir une commande. On refait ici ce que l'on a déjà vu rapidement lors de l'installation de Thonny.

Note

Ce tuto est en préparation et sera prochainement disponible. Le rythme de publication est d'au moins 10 nouveaux tutos par mois (2 ou 3 par semaine au moins).

Pour tous les abonnés, les nouveaux tutos sont directement disponibles au fur et à mesure de leur publication. Vous êtes impatients de la sortie de ce tuto : faîtes-le nous savoir !


Déclarer et utiliser des variables en (Micro)Python

On va commencer par le commencement : comprendre ce qu'est une variable et comment les déclarer, les utiliser.

De ce point de vue, le langage (Micro)Python ne vous embête pas avec des choses compliquées : déclarer une variable, c'est simple et intuitif.

On en profite pour découvrir auss les opérations arithmétiques de bases entre variables numériques. Rien de très sorcier et tout de suite un peu ludique en fait !

Ressources
  • Tuto en ligne : "Déclarer et utiliser des variables en (Micro)Python" (accès réservé aux abonnés)

Complément : notion de type et types de données en (Micro)Python

Une fois que nous avons vu comment créer et utiliser des variables, et bien que Python ne nous oblige pas à indiquer le type des variables utilisées, nous allons malgré tout prendre le temps de comprendre la notion de type et présenter les principaux types de données en Python.

Nous verrons également comment convertir explicitement une variable dans un type donné.

Nous verrons enfin les situations concrètes où il est utile de prendre en compte le type d'une variable.

Ressources
  • Tuto en ligne : "Notion de type et types de données en (Micro)Python" (accès réservé aux abonnés)

Savoir importer des modules en (Micro)Python

Dans ce tutoriel, vous allez apprendre à utiliser les librairies externes du langage (Micro)Python, appelées modules.

Nous allons voir ici :

  • le principe d'inclusion des modules standards (ou propres à Brython donc "standard" en Brython) disponibles dans un code Brython
  • les principes généraux d'utilisation des modules qui restent valables comme en Python standard
  • et également comment créer et importer son propre module Python dans un script Python.

Bonus : Savoir "explorer" les modules en (Micro)Python

Nous avons vu précédemment comment importer un module... mais avant de pouvoir importer une classe qu'il contient ou une fonction qu'il contient, encore faut-il savoir qu'elle existe !

Pour cela il y a la documentation... mais il est également possible "d'explorer" le contenu d'un module grâce à une fonction dédiée du langage (Micro)Python, la fonction dir(). Nous allons présenter cette fonction et en profiter pour explorer un peu les modules de la carte (Micro)Python.


Les maths en (Micro)Python

Apprendre à utiliser un premier module, le module math et les fonctions mathématiques disponibles en MicroPython.

Note

Ce tuto est en préparation et sera prochainement disponible. Le rythme de publication est d'au moins 10 nouveaux tutos par mois (2 ou 3 par semaine au moins).

Pour tous les abonnés, les nouveaux tutos sont directement disponibles au fur et à mesure de leur publication. Vous êtes impatients de la sortie de ce tuto : faîtes-le nous savoir !


Utiliser le hasard en (Micro)Python

Complément logique de l'utilisation du module math, apprendre à utiliser le hasard avec Micropython.

Note

Ce tuto est en préparation et sera prochainement disponible. Le rythme de publication est d'au moins 10 nouveaux tutos par mois (2 ou 3 par semaine au moins).

Pour tous les abonnés, les nouveaux tutos sont directement disponibles au fur et à mesure de leur publication. Vous êtes impatients de la sortie de ce tuto : faîtes-le nous savoir !


Savoir utiliser les chaînes en (Micro)Python !

Apprendre à utiliser les chaînes texte en (Micro)Python, objet "séquence" de base.

Note

Ce tuto est en préparation et sera prochainement disponible. Le rythme de publication est d'au moins 10 nouveaux tutos par mois (2 ou 3 par semaine au moins).

Pour tous les abonnés, les nouveaux tutos sont directement disponibles au fur et à mesure de leur publication. Vous êtes impatients de la sortie de ce tuto : faîtes-le nous savoir !


Savoir utiliser l'objet List en (Micro)Python : essentiel !

Découvrir et apprendre à utiliser l'objet list, un objet séquence fondamental du langage Python.

Note

Ce tuto est en préparation et sera prochainement disponible. Le rythme de publication est d'au moins 10 nouveaux tutos par mois (2 ou 3 par semaine au moins).

Pour tous les abonnés, les nouveaux tutos sont directement disponibles au fur et à mesure de leur publication. Vous êtes impatients de la sortie de ce tuto : faîtes-le nous savoir !


Savoir utiliser la notation slice en (Micro)Python !

Que ce soit avec les list ou les str, la notation slice est un outil propre au langage Python... et est disponible avec (Micro)Python !

Note

Ce tuto est en préparation et sera prochainement disponible. Le rythme de publication est d'au moins 10 nouveaux tutos par mois (2 ou 3 par semaine au moins).

Pour tous les abonnés, les nouveaux tutos sont directement disponibles au fur et à mesure de leur publication. Vous êtes impatients de la sortie de ce tuto : faîtes-le nous savoir !

Vos premiers scripts


Comprendre le principe d'utilisation d'un script Micropython

Les bases pour écrire un script en Micropython

Note

Ce tuto est en préparation et sera prochainement disponible. Le rythme de publication est d'au moins 10 nouveaux tutos par mois (2 ou 3 par semaine au moins).

Pour tous les abonnés, les nouveaux tutos sont directement disponibles au fur et à mesure de leur publication. Vous êtes impatients de la sortie de ce tuto : faîtes-le nous savoir !


Les règles de syntaxe générale du langage Python

Découvrir les règles de syntaxe de base du langage (Micro)Python

Note

Ce tuto est en préparation et sera prochainement disponible. Le rythme de publication est d'au moins 10 nouveaux tutos par mois (2 ou 3 par semaine au moins).

Pour tous les abonnés, les nouveaux tutos sont directement disponibles au fur et à mesure de leur publication. Vous êtes impatients de la sortie de ce tuto : faîtes-le nous savoir !


Afficher des messages ou des variables

Reprise très simple du "Hello World !" mais ici dans un script Micropython. Apprenez également à afficher la valeur de variables, bases utiles pour vos scripts.

Note

Ce tuto est en préparation et sera prochainement disponible. Le rythme de publication est d'au moins 10 nouveaux tutos par mois (2 ou 3 par semaine au moins).

Pour tous les abonnés, les nouveaux tutos sont directement disponibles au fur et à mesure de leur publication. Vous êtes impatients de la sortie de ce tuto : faîtes-le nous savoir !


Complément sur les variables : Saisir une valeur en (Micro)Python

A présent, nous allons voir quelque chose qui n'est pas très compliqué, mais qui sera très pratique lorsque l'on en aura besoin : nous allons voir comment il est possible de demander à l'utilisateur de saisir une valeur.

Ceci permet d'écrire des scripts en se basant sur la réponse saisie à une ou plusieurs questions. Ici nous présentons la fonction input() et le principe de son utilisation .

Ressources
  • Tuto en ligne : Saisir des valeurs
  • Référence : la fonction input()

Introduction aux fonctions en (Micro)Python

Les bases de l'écriture des fonctions en (Micro)Python.

Note

Ce tuto est en préparation et sera prochainement disponible. Le rythme de publication est d'au moins 10 nouveaux tutos par mois (2 ou 3 par semaine au moins).

Pour tous les abonnés, les nouveaux tutos sont directement disponibles au fur et à mesure de leur publication. Vous êtes impatients de la sortie de ce tuto : faîtes-le nous savoir !


Complément sur les variables : notion de portée des variables et où déclarer vos variables

Notion de portée des variables, mot-clé global.

Note

Ce tuto est en préparation et sera prochainement disponible. Le rythme de publication est d'au moins 10 nouveaux tutos par mois (2 ou 3 par semaine au moins).

Pour tous les abonnés, les nouveaux tutos sont directement disponibles au fur et à mesure de leur publication. Vous êtes impatients de la sortie de ce tuto : faîtes-le nous savoir !


Savoir utiliser la boucle for.. in.. (Micro)Python

Découvrir la boucle pythonique !

Note

Ce tuto est en préparation et sera prochainement disponible. Le rythme de publication est d'au moins 10 nouveaux tutos par mois (2 ou 3 par semaine au moins).

Pour tous les abonnés, les nouveaux tutos sont directement disponibles au fur et à mesure de leur publication. Vous êtes impatients de la sortie de ce tuto : faîtes-le nous savoir !


Savoir utiliser la condition if.. elif.. else... en (Micro)Python

Les conditions en (Micro)Python

Note

Ce tuto est en préparation et sera prochainement disponible. Le rythme de publication est d'au moins 10 nouveaux tutos par mois (2 ou 3 par semaine au moins).

Pour tous les abonnés, les nouveaux tutos sont directement disponibles au fur et à mesure de leur publication. Vous êtes impatients de la sortie de ce tuto : faîtes-le nous savoir !


Introduction à la notion de classe en (Micro)Python

En (Micro)Python, tous les objets sont des classes. Nous prenons ici le temps de présenter les principes généraux de l'utilisation d'une classe :

  • structure type d'une classe
  • utilisation du constructeur
  • utilisation des propriétés
  • utilisaton des fonctions d'instance et de classe

Note

Ce tuto est en préparation et sera prochainement disponible. Le rythme de publication est d'au moins 10 nouveaux tutos par mois (2 ou 3 par semaine au moins).

Pour tous les abonnés, les nouveaux tutos sont directement disponibles au fur et à mesure de leur publication. Vous êtes impatients de la sortie de ce tuto : faîtes-le nous savoir !


Savoir utiliser un Timer en (Micro)Python

Dès que l'on a besoin de faire "boucler" un code, l'objet Timer est la clé !

note cf premiers pas et bases... Pi Pico * le besoin de boucler * la solution à éviter : while True * la classe Timer * constructeur Timer * initialisation Timer * exemple d'utilisation * structure type d'un programme MicroPython

Note

Ce tuto est en préparation et sera prochainement disponible. Le rythme de publication est d'au moins 10 nouveaux tutos par mois (2 ou 3 par semaine au moins).

Pour tous les abonnés, les nouveaux tutos sont directement disponibles au fur et à mesure de leur publication. Vous êtes impatients de la sortie de ce tuto : faîtes-le nous savoir !


Savoir (ne pas) utiliser la boucle conditionelle while.. en (Micro)Python

La boucle while et comment savoir (ne pas) l'utiliser !

Note

Ce tuto est en préparation et sera prochainement disponible. Le rythme de publication est d'au moins 10 nouveaux tutos par mois (2 ou 3 par semaine au moins).

Pour tous les abonnés, les nouveaux tutos sont directement disponibles au fur et à mesure de leur publication. Vous êtes impatients de la sortie de ce tuto : faîtes-le nous savoir !

Fonctionnalités "système" en Micropython

===> à mettre en section approf


Savoir utiliser chemins et répertoire en MicroPython

Les chemins en (Micro)Python

Note

Ce tuto est en préparation et sera prochainement disponible. Le rythme de publication est d'au moins 10 nouveaux tutos par mois (2 ou 3 par semaine au moins).

Pour tous les abonnés, les nouveaux tutos sont directement disponibles au fur et à mesure de leur publication. Vous êtes impatients de la sortie de ce tuto : faîtes-le nous savoir !


Fichiers texte en MicroPython

Apprendre à utiliser un fichier texte en (Micro)Python

Note

Ce tuto est en préparation et sera prochainement disponible. Le rythme de publication est d'au moins 10 nouveaux tutos par mois (2 ou 3 par semaine au moins).

Pour tous les abonnés, les nouveaux tutos sont directement disponibles au fur et à mesure de leur publication. Vous êtes impatients de la sortie de ce tuto : faîtes-le nous savoir !


Temps, date et heure en MicroPython

Temps, date et heure en (Micro)Python

Note

Ce tuto est en préparation et sera prochainement disponible. Le rythme de publication est d'au moins 10 nouveaux tutos par mois (2 ou 3 par semaine au moins).

Pour tous les abonnés, les nouveaux tutos sont directement disponibles au fur et à mesure de leur publication. Vous êtes impatients de la sortie de ce tuto : faîtes-le nous savoir !

Approfondissement


Compléments sur l'utilisation des List !

Encore plus sur les list !

Note

Ce tuto est en préparation et sera prochainement disponible. Le rythme de publication est d'au moins 10 nouveaux tutos par mois (2 ou 3 par semaine au moins).

Pour tous les abonnés, les nouveaux tutos sont directement disponibles au fur et à mesure de leur publication. Vous êtes impatients de la sortie de ce tuto : faîtes-le nous savoir !


Savoir utiliser les "comprehension list" en MicroPython

Découvrez la "tuerie totale" en (Micro)Python !

Note

Ce tuto est en préparation et sera prochainement disponible. Le rythme de publication est d'au moins 10 nouveaux tutos par mois (2 ou 3 par semaine au moins).

Pour tous les abonnés, les nouveaux tutos sont directement disponibles au fur et à mesure de leur publication. Vous êtes impatients de la sortie de ce tuto : faîtes-le nous savoir !


Savoir utiliser les dictionnaires en MicroPython

Un objet Python à connaître : les dict !

Note

Ce tuto est en préparation et sera prochainement disponible. Le rythme de publication est d'au moins 10 nouveaux tutos par mois (2 ou 3 par semaine au moins).

Pour tous les abonnés, les nouveaux tutos sont directement disponibles au fur et à mesure de leur publication. Vous êtes impatients de la sortie de ce tuto : faîtes-le nous savoir !


Savoir utiliser la gestion des exceptions en MicroPython

Gérer les erreurs et rendre ses codes plus robustes en (Micro)Python.

Note

Ce tuto est en préparation et sera prochainement disponible. Le rythme de publication est d'au moins 10 nouveaux tutos par mois (2 ou 3 par semaine au moins).

Pour tous les abonnés, les nouveaux tutos sont directement disponibles au fur et à mesure de leur publication. Vous êtes impatients de la sortie de ce tuto : faîtes-le nous savoir !


Les opérateurs logiques en (Micro)Python

Complément logique des conditions if elif else

Note

Ce tuto est en préparation et sera prochainement disponible. Le rythme de publication est d'au moins 10 nouveaux tutos par mois (2 ou 3 par semaine au moins).

Pour tous les abonnés, les nouveaux tutos sont directement disponibles au fur et à mesure de leur publication. Vous êtes impatients de la sortie de ce tuto : faîtes-le nous savoir !

Stratégies de temporisation en MicroPython


Faire du séquentiel avec un Timer ?

Le point de départ ici est de comprendre qu'il faut éviter absolument l'utilisation de while True : à la place, il faut utiliser un Timer qui va appeler une fonction à intervalles réguliers. Cela av avoir plusieurs intérêts :

  • on évite le blocage de l'interpréteur
  • on peut faire du multi-tâches à l'aide de plusieurs timers

Ceci étant, la question qui se pose, c'est comment réaliser des tâches séquentielles dans une fonction en recourant à un Timer ? La solution passe par le comptage des passages dans la fonction, et à adapter le comportement en fonction du nombre de passages. La façon la plus simple d'évaluer le nombre de passages est de recourir à l'opération modulo %.

Une fois que l'on comprend ce principe, il est facile de le généraliser sur une base 100 passages ou 1000 passages.

Note

Ce tuto est en préparation et sera prochainement disponible. Le rythme de publication est d'au moins 10 nouveaux tutos par mois (2 ou 3 par semaine au moins).

Pour tous les abonnés, les nouveaux tutos sont directement disponibles au fur et à mesure de leur publication. Vous êtes impatients de la sortie de ce tuto : faîtes-le nous savoir !


Evaluer la durée d'une instruction, d'un bout de code

Pour être optimale, l'utilisation des Timer présuppose que la durée d'exécution du code de la fonction soit très inférieur à la période du Timer. Une autre stratégie importante est donc de savoir compter la durée d'exécution d'une instruction, d'un bout de code.

On peut le faire 1 seule fois mais aussi n fois répétées avec un calcul de la durée moyenne, un peu comme le %timeit de l'interpréteur de l'interpréteur Jupyter.

Note

Ce tuto est en préparation et sera prochainement disponible. Le rythme de publication est d'au moins 10 nouveaux tutos par mois (2 ou 3 par semaine au moins).

Pour tous les abonnés, les nouveaux tutos sont directement disponibles au fur et à mesure de leur publication. Vous êtes impatients de la sortie de ce tuto : faîtes-le nous savoir !


Stratégies de temporisations en (Micro)Python

Stratégies de temporisation en (Micro)Python ==> stratégies à proprement parler dans approf plutôt non ou au fur et à mesure micro

Note

Ce tuto est en préparation et sera prochainement disponible. Le rythme de publication est d'au moins 10 nouveaux tutos par mois (2 ou 3 par semaine au moins).

Pour tous les abonnés, les nouveaux tutos sont directement disponibles au fur et à mesure de leur publication. Vous êtes impatients de la sortie de ce tuto : faîtes-le nous savoir !