L'OO selon St Python

De Wiki Linux62.

(Différences entre les versions)
 
Ligne 1 : Ligne 1 :
 
<python> t'as jms fait de prog orientee objet ?
 
<python> t'as jms fait de prog orientee objet ?
 +
 
<Jojosan> jamais.
 
<Jojosan> jamais.
 +
 
<python> hum okp
 
<python> hum okp
 +
 
<python> donc tu te galeres avec le concept de classe/methodes ?
 
<python> donc tu te galeres avec le concept de classe/methodes ?
 +
 
<Jojosan> ouaip
 
<Jojosan> ouaip
<python> tu veux que je t'explique en ultra resume
+
 
<python> ?
+
<python> tu veux que je t'explique en ultra resume ?
 +
 
 
<Jojosan> résume largement :)
 
<Jojosan> résume largement :)
 +
 
<python> okp
 
<python> okp
 +
 
<Jojosan> ais que j'sois fonctionnel à peu près
 
<Jojosan> ais que j'sois fonctionnel à peu près
 +
 
<python> disons qu'une classe ca va representer un objet
 
<python> disons qu'une classe ca va representer un objet
 +
 
<python> par exemple
 
<python> par exemple
 +
 
<python> tu peux modeliser un etre humain par une classe
 
<python> tu peux modeliser un etre humain par une classe
 +
 
<python> cette classe aura des attributs (par exemple la taille en cm, le poids etc...)
 
<python> cette classe aura des attributs (par exemple la taille en cm, le poids etc...)
 +
 
<python> et des methodes
 
<python> et des methodes
 +
 
<python> que l'objet effectue
 
<python> que l'objet effectue
 +
 
<Jojosan> okep.
 
<Jojosan> okep.
 +
 
<python> par exemple: boire(), manger(), faire_caca(), grossir(), taper_son_voisin() etc..
 
<python> par exemple: boire(), manger(), faire_caca(), grossir(), taper_son_voisin() etc..
 +
 
<python> voila
 
<python> voila
 +
 
<python> ensuite t'as l'heritage
 
<python> ensuite t'as l'heritage
 +
 
<python> tu peux _specialiser_ la classe Humain
 
<python> tu peux _specialiser_ la classe Humain
 +
 
<python> en 2 sous-classes: Homme et Femme
 
<python> en 2 sous-classes: Homme et Femme
 +
 
<Jojosan> okip
 
<Jojosan> okip
 +
 
<python> donc la classe Homme herite de la classe Humain
 
<python> donc la classe Homme herite de la classe Humain
 +
 
<Jojosan> qui peuvent toujours faire_caca() etc... :]
 
<Jojosan> qui peuvent toujours faire_caca() etc... :]
 +
 
<python> donc un Homme a toutes les methodes et attributs de Humain (boire(), manger() etc...)
 
<python> donc un Homme a toutes les methodes et attributs de Humain (boire(), manger() etc...)
 +
 
<python> voila
 
<python> voila
 +
 
<python> mais t'as des trucs en plus chez l'Homme que l'Humain n'a pas
 
<python> mais t'as des trucs en plus chez l'Homme que l'Humain n'a pas
 +
 
<Jojosan> okep
 
<Jojosan> okep
 +
 
<python> par exemple, dans les attributs de l'Homme, tu peux rajouter la taille du sexe
 
<python> par exemple, dans les attributs de l'Homme, tu peux rajouter la taille du sexe
 +
 
<Jojosan> I see :)
 
<Jojosan> I see :)
 +
 
<python> et dans la classe Femme, qui herite d'Humain, tu peux mettre comme attribut la taille des seins, ou encore une nouvelle methode: Accoucher()
 
<python> et dans la classe Femme, qui herite d'Humain, tu peux mettre comme attribut la taille des seins, ou encore une nouvelle methode: Accoucher()
 +
 
<python> etc... :)
 
<python> etc... :)
 +
 
<python> ca c'est le concept de classe ;)
 
<python> ca c'est le concept de classe ;)
 +
 
<python> donc t'as
 
<python> donc t'as
 +
 
<python> class Humain:
 
<python> class Humain:
 +
 
<python> etc...
 
<python> etc...
 +
 
<python> et t'as une fonction d'initialisation
 
<python> et t'as une fonction d'initialisation
 +
 
<python> qui est appellee a la creation de l'objet
 
<python> qui est appellee a la creation de l'objet
 +
 
<python> cad quand tu fais: bob = Humain()
 
<python> cad quand tu fais: bob = Humain()
 +
 
<python> c'est la fonction __init__(self)
 
<python> c'est la fonction __init__(self)
 +
 
<Jojosan> okep
 
<Jojosan> okep
 +
 
<python> par exemple
 
<python> par exemple
 +
 
<Jojosan> ah c'est juste ça :|
 
<Jojosan> ah c'est juste ça :|
 +
 
<python> si pour init ton humain faut donner la taille et le poids
 
<python> si pour init ton humain faut donner la taille et le poids
 +
 
<python> t'auras
 
<python> t'auras
 +
 
<python> class Humain:
 
<python> class Humain:
 +
 
<python>  def __init__(self, taille, poids):
 
<python>  def __init__(self, taille, poids):
 +
 
<python>    self.size = taille
 
<python>    self.size = taille
 +
 
<python>    self.weight = poids
 
<python>    self.weight = poids
 +
 
<python> par exemple
 
<python> par exemple
 +
 
<Jojosan> okies :)
 
<Jojosan> okies :)
 +
 
<python> et apres pour creer un Humain tu fais: bob = Humain(183, 82)
 
<python> et apres pour creer un Humain tu fais: bob = Humain(183, 82)
 +
 
<python> voilou :)
 
<python> voilou :)
 +
 
<python> et le "self" tu maitrises ?
 
<python> et le "self" tu maitrises ?
 +
 
<Jojosan> j'ai l'idée de ce que c'est
 
<Jojosan> j'ai l'idée de ce que c'est
 +
 
<python> okp
 
<python> okp
 +
 
<Jojosan> ça pointe vers l'appellant en gros ?
 
<Jojosan> ça pointe vers l'appellant en gros ?
 +
 
<python> ca pointe sur la classe dans laquelle tu es
 
<python> ca pointe sur la classe dans laquelle tu es
 +
 
<python> ui
 
<python> ui
 +
 
<Jojosan> okip
 
<Jojosan> okip
 +
 
<python> toutes les methodes ont au moins un argument qui est self
 
<python> toutes les methodes ont au moins un argument qui est self
 +
 
<python> par exemple dans la classe Humain
 
<python> par exemple dans la classe Humain
 +
 
<python>  def boire(self, liquide):
 
<python>  def boire(self, liquide):
 +
 
<python>      ....
 
<python>      ....
 +
 
<python> et tu feras: bob.boire("eau")
 
<python> et tu feras: bob.boire("eau")
 +
 
<python> ou alors
 
<python> ou alors
 +
 
<python>  def faire_caca(self):
 
<python>  def faire_caca(self):
 +
 
<python>      ...
 
<python>      ...
 +
 
<Jojosan> okie
 
<Jojosan> okie
 +
 
<python> et tu feras: bob.faire_caca()
 
<python> et tu feras: bob.faire_caca()
 +
 
<python> ok bob ?
 
<python> ok bob ?
 +
 
<Jojosan> ok bud
 
<Jojosan> ok bud
 +
 
<python> good :)
 
<python> good :)
 +
 
<Jojosan> hey
 
<Jojosan> hey
 +
 
<Jojosan> easy :)
 
<Jojosan> easy :)
 +
 
<python> tu maitrises les classes en python ;)
 
<python> tu maitrises les classes en python ;)

Version du 25 mai 2006 à 16:51

<python> t'as jms fait de prog orientee objet ?

<Jojosan> jamais.

<python> hum okp

<python> donc tu te galeres avec le concept de classe/methodes ?

<Jojosan> ouaip

<python> tu veux que je t'explique en ultra resume ?

<Jojosan> résume largement :)

<python> okp

<Jojosan> ais que j'sois fonctionnel à peu près

<python> disons qu'une classe ca va representer un objet

<python> par exemple

<python> tu peux modeliser un etre humain par une classe

<python> cette classe aura des attributs (par exemple la taille en cm, le poids etc...)

<python> et des methodes

<python> que l'objet effectue

<Jojosan> okep.

<python> par exemple: boire(), manger(), faire_caca(), grossir(), taper_son_voisin() etc..

<python> voila

<python> ensuite t'as l'heritage

<python> tu peux _specialiser_ la classe Humain

<python> en 2 sous-classes: Homme et Femme

<Jojosan> okip

<python> donc la classe Homme herite de la classe Humain

<Jojosan> qui peuvent toujours faire_caca() etc... :]

<python> donc un Homme a toutes les methodes et attributs de Humain (boire(), manger() etc...)

<python> voila

<python> mais t'as des trucs en plus chez l'Homme que l'Humain n'a pas

<Jojosan> okep

<python> par exemple, dans les attributs de l'Homme, tu peux rajouter la taille du sexe

<Jojosan> I see :)

<python> et dans la classe Femme, qui herite d'Humain, tu peux mettre comme attribut la taille des seins, ou encore une nouvelle methode: Accoucher()

<python> etc... :)

<python> ca c'est le concept de classe ;)

<python> donc t'as

<python> class Humain:

<python> etc...

<python> et t'as une fonction d'initialisation

<python> qui est appellee a la creation de l'objet

<python> cad quand tu fais: bob = Humain()

<python> c'est la fonction __init__(self)

<Jojosan> okep

<python> par exemple

<Jojosan> ah c'est juste ça :|

<python> si pour init ton humain faut donner la taille et le poids

<python> t'auras

<python> class Humain:

<python> def __init__(self, taille, poids):

<python> self.size = taille

<python> self.weight = poids

<python> par exemple

<Jojosan> okies :)

<python> et apres pour creer un Humain tu fais: bob = Humain(183, 82)

<python> voilou :)

<python> et le "self" tu maitrises ?

<Jojosan> j'ai l'idée de ce que c'est

<python> okp

<Jojosan> ça pointe vers l'appellant en gros ?

<python> ca pointe sur la classe dans laquelle tu es

<python> ui

<Jojosan> okip

<python> toutes les methodes ont au moins un argument qui est self

<python> par exemple dans la classe Humain

<python> def boire(self, liquide):

<python> ....

<python> et tu feras: bob.boire("eau")

<python> ou alors

<python> def faire_caca(self):

<python> ...

<Jojosan> okie

<python> et tu feras: bob.faire_caca()

<python> ok bob ?

<Jojosan> ok bud

<python> good :)

<Jojosan> hey

<Jojosan> easy :)

<python> tu maitrises les classes en python ;)

Outils personnels
Équipes