Maison développement back-end Tutoriel Python qu'est-ce que la méthode python

qu'est-ce que la méthode python

Oct 25, 2019 am 11:16 AM
méthode python

qu'est-ce que la méthode python

Quelle est la méthode python ? Les méthodes

sont utilisées pour décrire le comportement des objets.

Les méthodes définies dans une classe peuvent être grossièrement divisées en quatre catégories : méthodes publiques, méthodes privées, méthodes statiques et méthodes de classe.

Les méthodes publiques et les méthodes privées font généralement référence à des méthodes d'instance appartenant à des objets

Les noms des méthodes privées commencent par deux traits de soulignement __.

Chaque objet possède ses propres méthodes publiques et privées, et les membres appartenant aux classes et aux objets sont accessibles dans ces deux types de méthodes.

Les méthodes publiques sont appelées directement via le nom de l'objet.

Les méthodes privées ne peuvent pas être appelées directement via le nom de l'objet. Elles ne peuvent être appelées que via self dans la méthode d'instance ou en externe via des méthodes spéciales prises en charge. par python.

Toutes les méthodes d'instance d'une classe doivent avoir au moins un paramètre nommé self, et doit être le premier paramètre formel de la méthode. Le paramètre self représente l'objet lui-même.

Vous devez préfixer self lors de l'accès aux propriétés d'instance dans une méthode d'instance d'une classe, mais vous n'avez pas besoin de transmettre ce paramètre lors de l'appel d'une méthode objet en externe via la méthode du nom de l'objet, vous devez le transmettre explicitement. un nom d'objet au paramètre self de la méthode pour spécifier clairement à quels membres de données de l'objet il faut accéder.

Les méthodes statiques et les méthodes de classe peuvent être appelées via des noms de classe et des noms d'objet, mais les membres appartenant à l'objet ne sont pas directement accessibles, seuls les membres appartenant à la classe sont accessibles. Généralement, cls est utilisé comme premier paramètre d'une méthode de classe, représentant la classe elle-même. Il n'est pas nécessaire de transmettre une valeur pour ce paramètre lors de l'appel de la méthode de classe.

Recommandé : "Tutoriel Python"

>>>class Root:
__total = 0
def __init__(self, v): #构造函数
self.__value = v
Root.__total + = 1
def show(self): #普通实例方法
print(‘self.__value:’,self.__value)
print(‘Root.__total:’,Root.__total)
@classmethod #修饰器,声明类方法
def classShowTotal(cls): #类方法
print(cls.__total)
@staticmethod #修饰器,声明静态方法
def staticShowTotal(): #静态方法
print(Root.__total)
>>>r = Root(3)
>>>r.classShowTotal() #通过对象来调用类方法
1
>>>r.staticShowTotal() #通过对象来调用静态方法
1
>>>r.show()
self.__value:3
Root.__total:1
>>>rr = Root(5)
>>>Root.classShowTotal() #通过类名调用类方法
2
>>>Root.staticShowTotal() #通过类名调用静态方法
2
>>>Root.show() #通过类名直接调用实例方法,报错
Copier après la connexion

Rapport d'erreurs

>>>Root.show(r) #调用方法并访问实例成员
self.__value:3
Root.__total:2
>>>r.show()
self.__value:3
Root.__total:2
>>>Root.show(rr) #通过类名调用实例方法时为 self 参数显式传递对象名
self.__value:5
Root.__total:2
>>>rr.show()
self.__value:5
Root.__total:2
Copier après la connexion

Remarque : Les données membres de différentes instances d'objet ne s'affectent pas les unes les autres et ne sont pas partagé à tout moment. Mais toutes les méthodes d'instance de la même classe sont partagées entre différents objets. Tous les objets exécutent le même code et le paramètre self est utilisé pour déterminer quelles données d'objet doivent être traitées.

En Python, il existe une différence entre les fonctions et les méthodes. Une méthode fait généralement référence à une fonction liée à une instance spécifique. Lorsqu'une méthode est appelée via un objet, l'objet lui-même sera passé comme premier paramètre. Les fonctions ordinaires n'ont pas cette fonctionnalité.

>>>class Demo
pass
>>>t = Demo()
>>>def test(self, v):
self.value = v
>>>t.test = test #动态增加普通函数
>>>t.test
>>>t.test(t,3)
>>>print(t.value)
3
>>>import types
>>>t.test = types.MethodType(test, t) #动态增加绑定的方法
>>>t.test
>>>t.test(5)
>>>print(t.value)
5
Copier après la connexion

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 de ce site Web
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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment résoudre le problème des autorisations rencontré lors de la visualisation de la version Python dans le terminal Linux? Comment résoudre le problème des autorisations rencontré lors de la visualisation de la version Python dans le terminal Linux? Apr 01, 2025 pm 05:09 PM

Solution aux problèmes d'autorisation Lors de la visualisation de la version Python dans Linux Terminal Lorsque vous essayez d'afficher la version Python dans Linux Terminal, entrez Python ...

Comment enseigner les bases de la programmation novice en informatique dans le projet et les méthodes axées sur les problèmes dans les 10 heures? Comment enseigner les bases de la programmation novice en informatique dans le projet et les méthodes axées sur les problèmes dans les 10 heures? Apr 02, 2025 am 07:18 AM

Comment enseigner les bases de la programmation novice en informatique dans les 10 heures? Si vous n'avez que 10 heures pour enseigner à l'informatique novice des connaissances en programmation, que choisissez-vous d'enseigner ...

Comment copier efficacement la colonne entière d'une dataframe dans une autre dataframe avec différentes structures dans Python? Comment copier efficacement la colonne entière d'une dataframe dans une autre dataframe avec différentes structures dans Python? Apr 01, 2025 pm 11:15 PM

Lorsque vous utilisez la bibliothèque Pandas de Python, comment copier des colonnes entières entre deux frames de données avec différentes structures est un problème courant. Supposons que nous ayons deux dats ...

Comment éviter d'être détecté par le navigateur lors de l'utilisation de Fiddler partout pour la lecture de l'homme au milieu? Comment éviter d'être détecté par le navigateur lors de l'utilisation de Fiddler partout pour la lecture de l'homme au milieu? Apr 02, 2025 am 07:15 AM

Comment éviter d'être détecté lors de l'utilisation de FiddlereVerywhere pour les lectures d'homme dans le milieu lorsque vous utilisez FiddlereVerywhere ...

Comment Uvicorn écoute-t-il en permanence les demandes HTTP sans servir_forever ()? Comment Uvicorn écoute-t-il en permanence les demandes HTTP sans servir_forever ()? Apr 01, 2025 pm 10:51 PM

Comment Uvicorn écoute-t-il en permanence les demandes HTTP? Uvicorn est un serveur Web léger basé sur ASGI. L'une de ses fonctions principales est d'écouter les demandes HTTP et de procéder ...

Comment créer dynamiquement un objet via une chaîne et appeler ses méthodes dans Python? Comment créer dynamiquement un objet via une chaîne et appeler ses méthodes dans Python? Apr 01, 2025 pm 11:18 PM

Dans Python, comment créer dynamiquement un objet via une chaîne et appeler ses méthodes? Il s'agit d'une exigence de programmation courante, surtout si elle doit être configurée ou exécutée ...

See all articles