Introduction à Python
  • Back to Main Website
  • Home
  • Comprendre Et Installer Python
    • Comprendre Et Installer Python
    • Histoire du Langage
    • Exécution d’un Programme Python
    • Versions et Compilation de Python
    • Le PATH
    • Path.. et environnements virtuels!
    • Les IDEs
    • Les Notebooks

    • Quelques IDEs en Python
    • VsCode - L’IDE Flexible et Polyvalent
    • Spyder - Un IDE Orienté Science des Données
    • PyCharm - L’IDE orienté Python

    • Travaux Pratiques
    • TP Guidé - Installer plusieurs versions de python avec pyenv
    • TP - Construire son python depuis la source
  • Syntaxes et Concepts de Base
    • Syntaxes et Concepts de Base
    • Syntaxe et objets de Base Python
    • Fonctions et Modules
    • Introduction à la POO en Python

    • Travaux Pratiques
    • Exercices d’applications
    • Base de la POO: Exercice
  • Les Librairies Python
    • Les Librairies Python
    • Installer et importer des librairies en Python
    • Les DataFrames
    • Exemple sur pandas
    • Calcul Scientifique et Optimization
    • Machine Learning
    • Recupérer des données du net
    • Python - Aussi un language pour servir des données
    • Visualiser et présenter ces données avec Python

    • Travaux Pratiques
    • TP-3 Libraries
    • TP - Utiliser pandas
  • Bonne pratiques, Dangers, et Astuces
    • Bonne pratiques, Dangers, et Astuces
    • Mutabilité et Scope
    • Typage en Python
    • Asynchronie et Multiprocessing

    • Travaux Pratiques
    • Modern Portfolio Theory - Practical Work
    • Modern Portfolio Theory - Practical Work - Corrected version
    • TP Python for Finance: Introduction to Option Pricing
    • TP Python for Finance: Introduction to Option Pricing - Corrected Version
    • TP - Creer un outil de récupération de donnée
  • Concepts avancés
    • Concepts avancés
    • L’arbre Syntaxique Abstrait ou AST
    • Python Orienté Objet - Les Dunders
    • Python Orienté Objet - les Design Patterns

    • Travaux Pratiques
    • TP-5
  • Sujets de Projets possibles
    • Projets
    • Projets Introduction à Python - Millésime 2024
    • Projets Introduction à Python - Millésime 2025
  • Code source
  1. Syntaxe et objets de Base Python
  • Syntaxes et Concepts de Base
  • Syntaxe et objets de Base Python
  • Fonctions et Modules
  • Introduction à la POO en Python
  • Travaux Pratiques
    • Exercices d’applications
    • Base de la POO: Exercice

On this page

  • Syntaxe de Base et Concepts Fondamentaux en Python
    • Section 1.1 : Les Bases de la Syntaxe Python
      • Expressions et Indentations
      • Commentaires
      • Types de Données Primitifs
    • Section 1.2 : Variables et Opérateurs
      • Déclaration de Variables et Conventions de Nommage
      • Opérateurs Arithmétiques et de Comparaison
      • Opérateurs Logiques
      • Opérateurs Spéciaux
    • Section 1.3 : Structures de Contrôle
      • Instructions Conditionnelles
      • Boucles
    • Section 1.4 : Gestion des Erreurs et Exceptions
      • Try-Except Blocks
      • Gestion de Plusieurs Exceptions :
      • Bloc Finally :
    • Section 1.5 : Exemple Concret Mélangeant les Concepts
      • Exemple Pratique : Boucle et Conditions
    • Section 1.6 : Structures de Données de Base - Listes et Tuples
      • Listes
      • Tuples
    • Section 1.7 : Structures de Données de Base - Dictionnaires et Ensembles
      • Dictionnaires
      • Ensembles
    • Section 1.8 : Exemple Pratique Mélangeant les Structures de Données
      • Exemple de Manipulation de Structures de Données
    • Section 1.9 : Compréhensions de Liste, de Dictionnaire et d’Ensemble
      • Compréhensions de Liste
      • Compréhensions de Dictionnaire
      • Compréhensions d’Ensemble
    • Section 1.10 : Exemple Concret Utilisant les Compréhensions
      • Exemple Pratique : Transformation de Données
    • Section 1.11 : Opérateurs Ternaires et Expressions Lambda
      • Opérateurs Ternaires
      • Expressions Lambda
    • Section 1.12 : Techniques Avancées de Manipulation de Séquences
      • Slicing Avancé
      • Listes et Dictionnaires Imbriqués
    • Section 1.13 : Exemple Pratique Combinant Plusieurs Concepts
      • Exemple : Filtrage et Transformation de Données

Syntaxe et objets de Base Python

Cours
Fondamentaux
Ce chapitre offre une plongée approfondie dans la syntaxe et les objets de base de Python. Il vise à fournir une compréhension solide des fondements du langage, couvrant tout, des variables et opérateurs aux structures de données essentielles comme les listes, les dictionnaires, et les tuples. Chaque section est enrichie d’exemples concrets et d’explications détaillées pour faciliter la compréhension et l’application pratique des concepts.
Author

Remi Genet

Published

2025-02-12

Syntaxe de Base et Concepts Fondamentaux en Python


Section 1.1 : Les Bases de la Syntaxe Python

La syntaxe de Python est conçue pour être lisible et concise. Comprendre ses particularités peut vous aider à écrire du code plus efficace et expressif.

Expressions et Indentations

  • Expressions : En Python, chaque ligne de code est généralement une expression, par exemple a = 5 ou print(a).

  • Indentations : Python utilise l’indentation pour définir des blocs de code. Contrairement à d’autres langages qui utilisent des accolades, l’indentation en Python n’est pas seulement pour la lisibilité mais est syntaxiquement significative.

Commentaires

  • En Python, les commentaires commencent par #. Tout ce qui suit # sur la ligne est ignoré par l’interpréteur.
  • NB: L’utilisation du # est utilisé dans de nombreux langages de programmation, comme le C, le C++, le Java, le PHP, le Perl, le Ruby, le Python, etc. pour définir les commentaires

Types de Données Primitifs

  • Nombres : Python supporte int, float, et plus rarement utilisés, complex.
  • Chaînes de Caractères : Déclarées avec des guillemets simples 'texte' ou doubles "texte". Le + peut concaténer des chaînes.
  • Booléens : True et False. Intéressant, en Python, 0, None, un string vide '', et les collections vides comme [], {} sont considérés comme équivalents à False.

Section 1.2 : Variables et Opérateurs

Les variables en Python sont des identificateurs liés à des valeurs. Elles ne nécessitent pas de déclaration explicite de type.

Déclaration de Variables et Conventions de Nommage

  • Les noms de variables doivent commencer par une lettre ou un underscore _, suivis de lettres, chiffres, ou underscores.

  • Les conventions de nommage courantes incluent snake_case pour les variables et fonctions, CamelCase pour les classes.

Opérateurs Arithmétiques et de Comparaison

  • Python offre une gamme complète d’opérateurs arithmétiques (+, -, *, /, // pour la division entière, % pour le modulo, ** pour la puissance) et de comparaison (==, !=, >, <, >=, <=).

Opérateurs Logiques

  • Les opérateurs logiques incluent and, or, et not.

Opérateurs Spéciaux

  • Opérateurs Bitwise : Opèrent sur des bits et incluent & (ET), | (OU), ^ (XOR), ~ (NON), << (décalage à gauche), >> (décalage à droite).
  • Opérateur d’Identité : is et is not vérifient si deux variables pointent vers le même objet.
  • Opérateur d’Appartenance : in et not in vérifient si une valeur est présente dans une séquence.

Section 1.3 : Structures de Contrôle

Les structures de contrôle en Python permettent d’exécuter conditionnellement des blocs de code ou de répéter des opérations.

Instructions Conditionnelles

  • if, else, elif permettent d’exécuter des blocs de code basés sur des conditions.

Boucles

  • Boucle For : Itère sur une séquence (comme une liste, un tuple, un dictionnaire, un ensemble, ou une chaîne de caractères).

  • Boucle While : Continue à exécuter un bloc de code tant qu’une condition est vraie.

Compréhensions de Liste

  • Une façon concise de créer des listes. Par exemple, [x for x in range(10)] crée une liste des nombres de 0 à 9.

Section 1.4 : Gestion des Erreurs et Exceptions

La gestion des erreurs est cruciale pour écrire des applications robustes. Python fournit un mécanisme de gestion des exceptions pour gérer les erreurs de manière contrôlée.

Try-Except Blocks

  • Un bloc try permet de tester un bloc de code pour les erreurs, et le bloc except permet de gérer l’erreur.

Gestion de Plusieurs Exceptions :

Vous pouvez spécifier plusieurs blocs except pour gérer différentes exceptions.

Bloc Finally :

Le bloc finally est facultatif et exécuté quel que soit le résultat des blocs try et except.

Section 1.5 : Exemple Concret Mélangeant les Concepts

Voyons comment on peut combiner les concepts abordés précédemment dans un exemple pratique. Cet exemple utilise une boucle while, une instruction conditionnelle if, et gère une éventuelle exception.

Exemple Pratique : Boucle et Conditions

Imaginons un scénario où nous avons deux variables x et y. Nous voulons exécuter une boucle qui continue tant que la somme de x et y est supérieure à 8. Dans la boucle, nous effectuons une opération qui peut potentiellement lever une exception.

Dans cet exemple, la boucle while continue de s’exécuter tant que la condition x + y > 8 est vraie. Si x est impair, le code essaie de diviser par zéro, ce qui lève une ZeroDivisionError. Dans ce cas, le message d’erreur est imprimé, et le mot-clé break interrompt la boucle. Le bloc finally est exécuté après chaque itération, peu importe les erreurs.

Section 1.6 : Structures de Données de Base - Listes et Tuples

Python offre plusieurs structures de données intégrées, comme les listes et les tuples, qui sont essentielles pour le stockage et la manipulation de données.

Listes

  • Les listes en Python sont des collections ordonnées et modifiables. Elles peuvent contenir des éléments de différents types.

  • Opérations de Base sur les Listes :

    • Ajout d’éléments (append, extend).
    • Suppression d’éléments (remove, pop).
    • Accès et slicing (ma_liste[0], ma_liste[1:3]).

Tuples

  • Les tuples sont similaires aux listes, mais ils sont immuables (leurs valeurs ne peuvent pas être modifiées après leur création).

  • Utilisés pour des données qui ne doivent pas être modifiées, comme les clés dans les dictionnaires.

Section 1.7 : Structures de Données de Base - Dictionnaires et Ensembles

Les dictionnaires et les ensembles sont des structures de données puissantes pour stocker et gérer des ensembles de données.

Dictionnaires

  • Les dictionnaires stockent des paires clé-valeur. Ils sont mutables et non ordonnés.

  • Manipulation de Dictionnaires :

    • Ajout et modification d’éléments (mon_dictionnaire["nom"] = "Bob").
    • Suppression d’éléments (del mon_dictionnaire["age"], mon_dictionnaire.pop("langage")).
    • Accès sécurisé (get).

Ensembles

  • Les ensembles sont des collections non ordonnées de valeurs uniques. Utiles pour les opérations mathématiques comme les unions, intersections, et différences.

  • Opérations sur les Ensembles :

    • Ajout (add) et suppression (remove) d’éléments.
    • Opérations comme union, intersection, et difference.

Section 1.8 : Exemple Pratique Mélangeant les Structures de Données

Voyons comment combiner listes, tuples, dictionnaires et ensembles dans un exemple pratique.

Exemple de Manipulation de Structures de Données

Supposons que nous avons une liste de tuples, chaque tuple contenant le nom d’un étudiant et son score. Nous voulons créer un dictionnaire où chaque clé est un score unique, et la valeur est la liste des noms d’étudiants ayant ce score.

Dans cet exemple, nous parcourons la liste etudiants. Pour chaque tuple, nous vérifions si le score est déjà une clé dans le dictionnaire scores. Si ce n’est pas le cas, nous ajoutons une nouvelle clé avec le score et initialisons sa valeur avec une liste contenant le nom de l’étudiant. Si le score existe déjà, nous ajoutons simplement le nom de l’étudiant à la liste correspondante.


Section 1.9 : Compréhensions de Liste, de Dictionnaire et d’Ensemble

Les compréhensions en Python sont un moyen concis et puissant de créer de nouvelles listes, dictionnaires ou ensembles à partir de séquences ou d’autres structures itérables.

Compréhensions de Liste

  • Les compréhensions de liste fournissent une façon concise de créer des listes. Elles consistent en une expression suivie par une clause for, puis zéro ou plusieurs clauses for ou if.

Compréhensions de Dictionnaire

  • Semblables aux compréhensions de liste, mais créent des dictionnaires. Elles sont entourées de {} avec une paire clé-valeur suivie d’une clause for.

Compréhensions d’Ensemble

  • Utilisées pour créer des ensembles de manière similaire aux compréhensions de liste, mais avec des éléments uniques.

Section 1.10 : Exemple Concret Utilisant les Compréhensions

Les compréhensions peuvent être particulièrement utiles pour transformer et filtrer des données. Voici un exemple qui utilise des compréhensions de liste et de dictionnaire pour traiter des données.

Exemple Pratique : Transformation de Données

Imaginons que nous avons une liste de mots et que nous voulons créer un dictionnaire qui associe chaque mot à sa longueur, mais seulement pour les mots de plus de trois lettres.

Dans cet exemple, la compréhension de dictionnaire parcourt la liste mots, incluant uniquement les mots dont la longueur dépasse trois lettres. Pour chaque mot éligible, le dictionnaire longueur_mots est construit avec le mot comme clé et sa longueur comme valeur.

Section 1.11 : Opérateurs Ternaires et Expressions Lambda

Les opérateurs ternaires et les expressions lambda en Python offrent des moyens concis d’effectuer des opérations conditionnelles et de créer de petites fonctions anonymes.

Opérateurs Ternaires

  • Les opérateurs ternaires permettent d’écrire des instructions conditionnelles en une seule ligne. La syntaxe est : [valeur_si_vrai] if [condition] else [valeur_si_faux].

Expressions Lambda

  • Les expressions lambda permettent de créer de petites fonctions anonymes. Elles sont utiles pour des opérations simples nécessitant une fonction.

Section 1.12 : Techniques Avancées de Manipulation de Séquences

Python fournit des outils puissants pour manipuler des listes, des tuples et d’autres séquences de manière expressive.

Slicing Avancé

  • Le slicing permet de sélectionner des sous-parties d’une séquence. En plus des bases, Python permet des slicings plus complexes.

Listes et Dictionnaires Imbriqués

  • Les listes et dictionnaires peuvent être imbriqués pour créer des structures de données complexes.

Section 1.13 : Exemple Pratique Combinant Plusieurs Concepts

Pour conclure ce chapitre, combinons plusieurs des concepts abordés dans un exemple illustrant leur utilité pratique.

Exemple : Filtrage et Transformation de Données

Supposons que nous avons une liste de dictionnaires représentant des livres, et nous voulons extraire les titres des livres publiés après 2000.

Dans cet exemple, une compréhension de liste est utilisée pour parcourir livres, en extrayant le titre de chaque livre dont l’année est supérieure à 2000. Cela démontre comment les compréhensions de liste peuvent être utilisées pour filtrer et transformer des données de manière concise et lisible. ```

Pour vous entrainez à pratiquer ces notions:

Back to top
Syntaxes et Concepts de Base
Fonctions et Modules

Introduction à Python, Rémi Genet.
Licence
Code source disponible sur Github

 

Site construit avec et Quarto
Inspiration pour la mise en forme du site ici
Code source disponible sur GitHub