Maison  >  Article  >  développement back-end  >  Exemple de code de la façon dont une sous-classe appelle une fonction de classe parent en Python

Exemple de code de la façon dont une sous-classe appelle une fonction de classe parent en Python

黄舟
黄舟original
2017-08-20 10:51:301225parcourir

La méthode d'initialisation d'une classe en Python est __init__(), donc la méthode d'initialisation du parent et des sous-classes est la suivante. L'article suivant vous présente principalement des exemples de la façon dont les sous-classes appellent les fonctions de la classe parent en Python. en détail grâce à un exemple de code. Les amis dans le besoin peuvent s'y référer.

Préface

Cet article vous présente principalement le contenu pertinent sur l'appel des fonctions de classe parent dans les sous-classes python _ dans les sous-classes en Python Le _init__. () remplacera la fonction de classe parent. Dans certains cas, il est souvent nécessaire d'appeler la fonction de classe parent dans la sous-classe. Pas grand chose à dire ci-dessous, jetons un œil à l'introduction détaillée :

Dans la routine suivante, ? ? ? C'est là que la fonction de classe parent doit être appelée. Ensuite, nous la présenterons en détail avec la routine.


 # -*- coding:utf-8 -*-
 class Student:
  def __init__(self,name):
   self.name=name
  def ps(self):
   print('I am %s'%self.name)
 
 class Score(Student):
  def __init__(self,name,score):
   self.score=score
   ???12 12  def ps1(self):
   print('I\'m %s,%s' %(self.name,self.score))
 
 Score('Bob','99').ps()
 Score('Bob','99').ps1()

Dans Python3.5, en consultant les informations, il existe les méthodes d'appel suivantes.

La première est la méthode directe. Utilisez le nom de la classe parent pour appeler directement, sous la forme de parent_class.parent_attribute(self) , et la routine correspondante est l'instruction :


Student.__init__(self,name)

La seconde se fait via la super fonction , sous la forme de super(child_class, child_object).parent_attribute(arg) . Le premier paramètre indique le point de départ de l'appel de la classe parent et le deuxième paramètre indique l'instance de classe (généralement self est utilisé. Lorsque le paramètre de la méthode de classe parent est uniquement self, le paramètre args n'a pas besoin d'être écrit). De plus, lorsqu'ils sont utilisés à l'intérieur d'une classe, child_class, child_object peuvent également être omis. Routine correspondante :


super(Score,self).__init__(name)

ou :


super().__init__(name)

peut également être utilisée en dehors du courssuperFonction, mais elle doit avoir deux paramètres child_class, child_object.

Résumé

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn