Apprentissage de classe Python

Une demi - heure. 2022-07-24 01:22:38 阅读数:399

apprentissageclassepython

PythonType d'apprentissage

1.1 Classes et objets

Orienté vers le processus:L'idée orientée objet est que le programme est exécuté étape par étape du début à la fin.(Les applets et les scripts sont pratiques)
Orienté objet:Les objets sont groupés,Les gens se rassemblent.
PythonLes caractéristiques du design sont:Tout est une classe.String、Liste、Les dictionnaires, etc., sont des classes,Chaque fois qu'une chaîne est créée,équivalent à créer un objet instantané pour une classe,Cet objet instancié peut utiliser la méthode de la classe string.

  • Catégorie:Collection utilisée pour décrire les propriétés et les méthodes
  • Méthodes:Fonctions définies dans la classe
  • Objet:Instanciation de la classe
class myclass: #Définir la classe
def __init__(self):
pass
def printstr(self, str): #Méthodes
print(str)
a = myclass() #Objet
a.printstr('he')

1.2 Membres des données

1.2.1 Membres privés et copropriétaires

Membres privés:Les membres privés ne peuvent pas accéder directement en dehors de la classe,En général, l'accès et le fonctionnement se font à l'intérieur de la classe,Ou appeler la méthode membre public de l'objet en dehors de la classe pour y accéder.
Total des membres:Utilisation publique,Peut être à l'intérieur de la classe,Il est également accessible en dehors de la classe.
PythonLes noms et méthodes des variables commençant par un soulignement ont une signification particulière,Surtout dans la définition des classes.

  • _xxx:Membres protégés,Ça ne marche pas“from module import ”Importer
  • __xxx__:Membres spéciaux définis par le système
  • __xxxMembres privés,Seuls les objets de classe sont accessibles par eux - mêmes, Les objets de la Sous - classe ne sont pas directement accessibles ,Peut passer"Nom de l'objet._Nom de la classe._xxx" Accès par des moyens spéciaux ,Mais ce n'est pas recommandé.
1.2.2 Membres des données
  • Membres de données appartenant à l'objet : En général, la méthode de construction __init__()Définition moyenne, Peut également être défini dans d'autres méthodes d'adhésion . À l'intérieur et à l'extérieur de la classe self Accès au préfixe , Les membres de données de différents objets d'une même classe n'ont aucune influence les uns sur les autres .
  • Membres de données appartenant à la classe :Les membres de données appartenant à une classe sont partagés par tous les objets de cette classe,N'appartient à aucun objet,Lors de la définition de la classe, Ce type de membre de données n'est généralement défini dans aucune des méthodes d'adhésion . Lors de l'accès externe à la classe ,Ça marcheselfPréfixe, Vous pouvez également utiliser le nom de la classe comme préfixe .
class myclass:
price = 100 # Définir les membres de données qui appartiennent à la classe 
def __init__(self):
self.name = 'he' # Définir les membres de données qui appartiennent à l'objet 
a = myclass() #Définir la classe
print(a.price) # Appeler un membre de données qui appartient à la classe 
print(myclass.price) # Appeler un membre de données qui appartient à la classe 
print(a.name) # Appeler un membre de données qui appartient à l'objet 

1.3 Méthodes

  • Exemple de méthode:Le paramètre doit avoirself, Et c'est le premier paramètre ,selfLe paramètre représente l'objet courant, Ce paramètre n'a pas besoin d'être passé lorsque le mode objet est appelé en dehors de la classe par le nom de l'objet .
  • Méthode de classe:Avecclassmethod Pour déclarer une méthode de classe , Paramètre par défaut requis cls, La méthode de classe n'a pas besoin d'être instantanée lorsqu'elle est utilisée , Peut être appelé par le nom de la classe et le nom de l'objet .
  • Méthode statique:J'en ai besoin.staticmethodModificateur pour déclarer, Pas besoin d'ajouter par défaut selfEtcls,Aucune Instanciation requise, Appelé par le nom de la classe et le nom de l'objet .
class myclass: #Définir la classe
def ord_print(self): #Définir la méthode d'instance,Au moins unself
print('C'est un exemple de méthode')
@classmethod
def class_print(cls): #Définir la méthode de classe,
print('C'est une méthode de classe')
@staticmethod
def static_print():
print('C'est une approche statique')
a = myclass() #Objet
a.ord_print()
a.class_print()
a.static_print()
myclass.class_print()
myclass.static_print()
Copyright:Cet article est[Une demi - heure.]Établi,Veuillez apporter le lien original pour réimprimer,remercier。 https://fra.fheadline.com/2022/205/202207240121556380.html