La programmation orientée objet en Python

Plus qu’un simple langage de script, Python est aussi un langage orienté objet.

Ce langage moderne et puissant est né au début des années 1990 sous l’impulsion de Guido van Rossum.

Apparue dans les années 60 quant à elle, la programmation orientée objet (POO) est un paradigme de programmation ; c’est-à-dire une façon de concevoir un programme informatique, reposant sur l’idée qu’un programme est composé d’objets interagissant les uns avec les autres.

En définitive, un objet est une donnée. Une donnée constituée de diverses propriétés, et pouvant être manipulée par différentes opérations.

La programmation orientée objet est le paradigme qui nous permet de définir nos propres types d’objets, avec leurs propriétés et opérations. Ce paradigme vient avec de nombreux concepts qui seront explicités le long de ce cours.

À travers ce tutoriel, nous allons nous intéresser à cette façon de penser et de programmer avec le langage Python.

Il vous est conseillé de maîtriser les bases de ce dernier (manipulation de valeurs, structures de contrôle, structures de données, fonctions) avant de continuer votre lecture.

Nous travaillerons ici avec la version 3 de Python (version 3.4 ou supérieure conseillée).

Objet et caractéristiques

  1. Il a une drôle de tête ce type-là
  2. Montre-moi tes attributs
  3. Discours de la méthode

Classes

  1. La classe à Dallas
  2. Argumentons pour construire
  3. Comment veux-tu que je t'encapsule ?
  4. Tu aimes les glaces, canard ?
  5. TP : Forum, utilisateurs et messages

Extension et héritage

  1. Hériter en toute simplicité
  2. La redéfinition de méthodes, c'est super !
  3. Une classe avec deux mamans
  4. TP : Fils de discussion

Opérateurs

  1. Des méthodes un peu spéciales
  2. Doux opérateurs
  3. TP : Arithmétique simple

Programmation orientée objet avancée

  1. Les attributs entrent en classe
  2. La méthode pour avoir la classe
  3. Le statique c'est fantastique
  4. Attribut es-tu là ?
  5. La dynamique des propriétés
  6. L'art des classes abstraites
  7. TP : Base de données


Ce cours touche maintenant à sa fin, mais votre apprentissage du Python continue. Avec la programmation objet, un nouveau monde s’offre à vous.

Vous allez pouvoir prendre en mains des frameworks tels que Django si le développement Web vous intéresse. Ou encore des bibliothèques comme PyGTK si vous êtes plutôt attirés par la programmation de GUI.

Enfin, si vous voulez compléter votre compréhension du modèle objet de Python, je peux vous orienter vers ce cours sur les notions avancées du langage.

9 commentaires

Ah mince, une erreur s'était glissée dans la configuration du script qui générait l'archive ZDS :euh:

Content que ça vous plaise. Et j'espère qu'on parviendra à avoir des parcours assez complets pour l'apprentissage de la programmation avec Python.

Super boulot, ça fait un moment que je le suis celui-là et c'est vraiment du boulot de qualité. Le contenu Python prend de l'importance, ça fait plaisir à voir !

+0 -0

sil vus plait aide moi pour executer ce programme:

import ’radar’ from nom_radar nom_radar= ’les noms des sites radar’ nom_radar=[’FES’,’DEBDOU’,’BENGRIR’,’AGADIR’,’CASA’,’KHOURIBGA’,’LARACHE’] [’Nom_radar’,’LAT_R,LONG_R’,’ELEV_R’,’TETA_R’,’H1_R,RAYON_R’] (’FES’,33.93078,4.97402,1.00,1.00,572.50,20.00,100000.00) (’DEBDOU’,33.96992,3.02058,1.00,1.00,1628.20,20.00,100000.00) (’BENGRIR’,32.1400,7.95,1.00,1.00,450.00,20.00,150000.00) (’AGADIR’,30.3100,09.40,1.00,1.00,74.00,20.00,150000.00) (’CASA’,33.3600,07.58,1.00,1.00,200.00,20.00,150000.00)
(’KHOURIBGA’,32.8800,06.90,1.00,1.00,785.00,20.00,150000.00)
(’LARACHE’,35.1800,06.13,1.00,1.00,47.00,20.00,150000.00)

sil vus plait aide moi pour executer ce programme:

import ’radar’ from nom_radar nom_radar= ’les noms des sites radar’ nom_radar=[’FES’,’DEBDOU’,’BENGRIR’,’AGADIR’,’CASA’,’KHOURIBGA’,’LARACHE’] [’Nom_radar’,’LAT_R,LONG_R’,’ELEV_R’,’TETA_R’,’H1_R,RAYON_R’] (’FES’,33.93078,4.97402,1.00,1.00,572.50,20.00,100000.00) (’DEBDOU’,33.96992,3.02058,1.00,1.00,1628.20,20.00,100000.00) (’BENGRIR’,32.1400,7.95,1.00,1.00,450.00,20.00,150000.00) (’AGADIR’,30.3100,09.40,1.00,1.00,74.00,20.00,150000.00) (’CASA’,33.3600,07.58,1.00,1.00,200.00,20.00,150000.00)
(’KHOURIBGA’,32.8800,06.90,1.00,1.00,785.00,20.00,150000.00)
(’LARACHE’,35.1800,06.13,1.00,1.00,47.00,20.00,150000.00)

IdrissiFati

Salut,

Crée un nouveau sujet dans le forum programmation, tu auras plus de réponses. De plus, utilise les balises pour ton code en choisissant le langage Python (c’est le deuxième bouton <> de l’éditeur).

Bonne continuation.

+3 -0

Bel effort, merci. Toutefois, ce contenu m’a rapidement largué. J’aurais eu besoin de plus d’exemples, avec des commentaires dans les codes proposés.
Autant on peut apprendre Python avec le monumental "Un zeste de python", autant ce contenu ne m’a pas permis de pouvoir (enfin) m’approprier la programmation objet.

+0 -0

J’entends ton retour et prévois de retravailler ce cours un jour ou l’autre notamment pour qu’il s’enchaîne mieux avec le Zeste de Python.
Mais est-ce que tu peux décrire plus précisément ce qui te perd (quel chapitre, quel exemple) pour que je puisse me pencher dessus ?

J’avais essayé de faire quelque chose de graduel pour introduire progressivement les notions donc je suis preneur de toute indication sur les passages qui iraient trop vite.

Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte