Posts Tagged ‘classe’

Python: vérification des sous classes avec la fonction issubclass

classe
{filelink=16895}

class A:
    pass
 
class B:
    pass
 
class C(A):
    pass
 
class D(A, B):
    pass
 
"""
 Vérifier si l'objet passé en paramètre
 est une sous classe d'une classe définie
 """
def evaluer(object):
    print object, "=>",
    if issubclass(object, A):
        print "A",
    if issubclass(object, B):
        print "B",
    if issubclass(object, C):
        print "C",
    if issubclass(object, D):
        print "D",
    print
 
evaluer(A)
evaluer(B)
evaluer(C)
evaluer(D)
evaluer("string")
 
"""
__main__.A => A
__main__.B => B
__main__.C => A C
__main__.D => A B D
string =>
Traceback (most recent call last):....
"""

Livres Sur ce Sujet

[amazon_image id=”2212134347″ link=”true” target=”_blank” size=”medium” ]Apprendre à programmer avec Python 3[/amazon_image] [amazon_image id=”B005J2L260″ link=”true” target=”_blank” size=”medium” ]Apprenez à programmer en Python[/amazon_image] [amazon_image id=”2100508830″ link=”true” target=”_blank” size=”medium” ]Python : Petit guide à l’usage du développeur agile[/amazon_image] [amazon_image id=”2212127081″ link=”true” target=”_blank” size=”medium” ]Apprendre à programmer avec Python 3 : Avec plus de 50 pages de corigés d’exercices ![/amazon_image]

Python: Trouver tous les membres d’une fonction

classe, set, slice, module
{filelink=16889}

 
class A:
    def a(self):
        pass
    def b(self):
        pass
 
class B(A):
    def c(self):
        pass
    def d(self):
        pass
 
def getmembres(klass, membres=None):
    # Retourner les membres de toute les classes
    if membres is None:
        membres = []
    for k in klass.__bases__:
        getmembres(k, membres)
    for m in dir(klass):
        if m not in membres:
            membres.append(m)
    return membres
 
print getmembres(A)
print getmembres(B)
print getmembres(IOError)
 
"""
['__doc__', '__module__', 'a', 'b']
['__doc__', '__module__', 'a', 'b', 'c', 'd']
['__class__', '__delattr__', '__doc__', '__getattribute__', '__hash__', '__init__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__str__', '__dict__', '__getitem__', '__getslice__', '__setstate__', 'args', 'message', '__module__', '__slots__', 'errno', 'filename', 'strerror']
 
"""

Livres Sur ce Sujet

[amazon_image id=”2212134347″ link=”true” target=”_blank” size=”medium” ]Apprendre à programmer avec Python 3[/amazon_image] [amazon_image id=”B005J2L260″ link=”true” target=”_blank” size=”medium” ]Apprenez à programmer en Python[/amazon_image] [amazon_image id=”2100508830″ link=”true” target=”_blank” size=”medium” ]Python : Petit guide à l’usage du développeur agile[/amazon_image] [amazon_image id=”2212127081″ link=”true” target=”_blank” size=”medium” ]Apprendre à programmer avec Python 3 : Avec plus de 50 pages de corigés d’exercices ![/amazon_image]

Python: Obtenir le type d’un objet

classe
{filelink=16878}

import types
 
def dump(object):
    print object,"=>",
 
    if type(object) is types.IntType:
        print "INTEGER",
    if type(object) is types.FloatType:
        print "FLOAT",
    if type(object) is types.StringType:
        print "STRING",
    if type(object) is types.ClassType:
        print "CLASSE",
    if type(object) is types.InstanceType:
        print "INSTANCE",
    print
 
dump(0)
dump(0.0)
dump("0")
 
class A:
    pass
 
class B:
    pass
 
dump(A)
dump(B)
 
a = A()
b = B()
 
dump(a)
dump(b)
 
"""
0 => INTEGER
0.0 => FLOAT
0 => STRING
__main__.A => CLASSE
__main__.B => CLASSE
<__main__.A instance at 1> => INSTANCE
<__main__.B instance at 2> => INSTANCE
"""

Livres Sur ce Sujet

[amazon_image id=”2212134347″ link=”true” target=”_blank” size=”medium” ]Apprendre à programmer avec Python 3[/amazon_image] [amazon_image id=”B005J2L260″ link=”true” target=”_blank” size=”medium” ]Apprenez à programmer en Python[/amazon_image] [amazon_image id=”2100508830″ link=”true” target=”_blank” size=”medium” ]Python : Petit guide à l’usage du développeur agile[/amazon_image] [amazon_image id=”2212127081″ link=”true” target=”_blank” size=”medium” ]Apprendre à programmer avec Python 3 : Avec plus de 50 pages de corigés d’exercices ![/amazon_image]

Python: Vérification des types avec le module operator

classe, list, list, map, module
{filelink=16855}

import operator
import UserList
 
def dump(data):
    print type(data), "=>",
    if operator.isCallable(data):
        print "CALLABLE",
    if operator.isMappingType(data):
        print "MAPPING",
    if operator.isNumberType(data):
        print "NUMBER",
    if operator.isSequenceType(data):
        print "SEQUENCE",
    print
 
dump(0)
dump("string")
dump("string"[0])
dump([1, 2, 3])
dump((1, 2, 3))
dump({"a": 1})
dump(len) # fonction
dump(UserList) # module
dump(UserList.UserList) # classe
dump(UserList.UserList()) # instance
 
"""
<type 'int'> => NUMBER
<type 'string'> => SEQUENCE
<type 'string'> => SEQUENCE
<type 'list'> => SEQUENCE
<type 'tuple'> => SEQUENCE
<type 'dictionary'> => MAPPING
<type 'builtin_function_or_method'> => CALLABLE
<type 'module'> =>
<type 'class'> => CALLABLE
<type 'instance'> => MAPPING NUMBER SEQUENCE
"""

Livres Sur ce Sujet

[amazon_image id=”2212134347″ link=”true” target=”_blank” size=”medium” ]Apprendre à programmer avec Python 3[/amazon_image] [amazon_image id=”B005J2L260″ link=”true” target=”_blank” size=”medium” ]Apprenez à programmer en Python[/amazon_image] [amazon_image id=”2100508830″ link=”true” target=”_blank” size=”medium” ]Python : Petit guide à l’usage du développeur agile[/amazon_image] [amazon_image id=”2212127081″ link=”true” target=”_blank” size=”medium” ]Apprendre à programmer avec Python 3 : Avec plus de 50 pages de corigés d’exercices ![/amazon_image]

Exemple de définition et d’utilisation des variables d’instance

classe
{filelink=16116}

class Animation: #définition d'une classe 'Animation'
  """
   Ma documentation
  """
  def __init__(self): #Définition des variables d'instance
   self.point_x=3.4
   self.point_y=6.
 
#Définition d'un instance de la classe
inst=Animation()
 
#Accéder aux variables de l'instance
print inst.point_x
print inst.point_y
 
#Modifier une variable d'instance
inst.point_y=15
print inst.point_y

Livres Sur ce Sujet

[amazon_image id=”2212134347″ link=”true” target=”_blank” size=”medium” ]Apprendre à programmer avec Python 3[/amazon_image] [amazon_image id=”B005J2L260″ link=”true” target=”_blank” size=”medium” ]Apprenez à programmer en Python[/amazon_image] [amazon_image id=”2100508830″ link=”true” target=”_blank” size=”medium” ]Python : Petit guide à l’usage du développeur agile[/amazon_image] [amazon_image id=”2212127081″ link=”true” target=”_blank” size=”medium” ]Apprendre à programmer avec Python 3 : Avec plus de 50 pages de corigés d’exercices ![/amazon_image]

Exemple de création des variables d’instance

classe
{filelink=16115}

class Animation: #définition d'une classe 'Animation'
  """
   Ma documentation
  """
  pass
 
anim=Animation()  # Création d'un objet
 
# Définition d'une variable d'instance
anim.point_x=3.4
anim.point_y=6.8
 
#Afficher les variables d'instance
print anim.point_x, anim.point_y

Livres Sur ce Sujet

[amazon_image id=”2212134347″ link=”true” target=”_blank” size=”medium” ]Apprendre à programmer avec Python 3[/amazon_image] [amazon_image id=”B005J2L260″ link=”true” target=”_blank” size=”medium” ]Apprenez à programmer en Python[/amazon_image] [amazon_image id=”2100508830″ link=”true” target=”_blank” size=”medium” ]Python : Petit guide à l’usage du développeur agile[/amazon_image] [amazon_image id=”2212127081″ link=”true” target=”_blank” size=”medium” ]Apprendre à programmer avec Python 3 : Avec plus de 50 pages de corigés d’exercices ![/amazon_image]

Exemple d’utilisation des variables de classe

classe
{filelink=16114}

class Animation: #définition d'une classe 'Animation'
  """
   Ma documentation
  """
  point=(0,0) #Définition d'une variable de la classe
 
print Animation.point  #Accès direct à la variable
obj= Animation()
print obj.point       #Accès à la variable via un objet
 
#Modification de la variable de la classe
obj.point=(3, 1.5)
print obj.point

Livres Sur ce Sujet

[amazon_image id=”2212134347″ link=”true” target=”_blank” size=”medium” ]Apprendre à programmer avec Python 3[/amazon_image] [amazon_image id=”B005J2L260″ link=”true” target=”_blank” size=”medium” ]Apprenez à programmer en Python[/amazon_image] [amazon_image id=”2100508830″ link=”true” target=”_blank” size=”medium” ]Python : Petit guide à l’usage du développeur agile[/amazon_image] [amazon_image id=”2212127081″ link=”true” target=”_blank” size=”medium” ]Apprendre à programmer avec Python 3 : Avec plus de 50 pages de corigés d’exercices ![/amazon_image]

Classe: Exemple de constructeur

classe
{filelink=16113}

class Personne(object):
    def __init__(self):
        print "La classe à été initialisée!"
 
    def afficher(self):
        print "La classe à été déjà initialisée."
 
# main
obj1 = Personne()
obj2 = Personne()
 
obj1.afficher()
obj2.afficher()

Livres Sur ce Sujet

[amazon_image id=”2212134347″ link=”true” target=”_blank” size=”medium” ]Apprendre à programmer avec Python 3[/amazon_image] [amazon_image id=”B005J2L260″ link=”true” target=”_blank” size=”medium” ]Apprenez à programmer en Python[/amazon_image] [amazon_image id=”2100508830″ link=”true” target=”_blank” size=”medium” ]Python : Petit guide à l’usage du développeur agile[/amazon_image] [amazon_image id=”2212127081″ link=”true” target=”_blank” size=”medium” ]Apprendre à programmer avec Python 3 : Avec plus de 50 pages de corigés d’exercices ![/amazon_image]

Exemple de création d’une instance de la classe

classe
{filelink=16112}

class Animation: #définition d'une classe 'Animation'
  """
   Ma documentation
  """
pass
 
#Création d'une instance de la classe 'Animation'
anim=Animation()
print type(anim)           #<type 'instance'>

Livres Sur ce Sujet

[amazon_image id=”2212134347″ link=”true” target=”_blank” size=”medium” ]Apprendre à programmer avec Python 3[/amazon_image] [amazon_image id=”B005J2L260″ link=”true” target=”_blank” size=”medium” ]Apprenez à programmer en Python[/amazon_image] [amazon_image id=”2100508830″ link=”true” target=”_blank” size=”medium” ]Python : Petit guide à l’usage du développeur agile[/amazon_image] [amazon_image id=”2212127081″ link=”true” target=”_blank” size=”medium” ]Apprendre à programmer avec Python 3 : Avec plus de 50 pages de corigés d’exercices ![/amazon_image]

Accéder aux atttributs prédéfinis d’une classe

classe
{filelink=16111}

class Animation: #définition d'une classe animation
 
   pass
 
# Accéder à certains attributs
print Animation.__dict__    #Information de namespace
print Animation.__doc__     #Information de documentation
print Animation.__bases__   #Information sur les classes de bases
print Animation.__module__  #Information sur le module de définition de la classe

Livres Sur ce Sujet

[amazon_image id=”2212134347″ link=”true” target=”_blank” size=”medium” ]Apprendre à programmer avec Python 3[/amazon_image] [amazon_image id=”B005J2L260″ link=”true” target=”_blank” size=”medium” ]Apprenez à programmer en Python[/amazon_image] [amazon_image id=”2100508830″ link=”true” target=”_blank” size=”medium” ]Python : Petit guide à l’usage du développeur agile[/amazon_image] [amazon_image id=”2212127081″ link=”true” target=”_blank” size=”medium” ]Apprendre à programmer avec Python 3 : Avec plus de 50 pages de corigés d’exercices ![/amazon_image]