Tout est un objet en python
bloc de code :
a = 1
print(type(a))
print(type(int))
Sortie console :
<class 'int'>
<class 'type'>
C'est-à-dire que la classe int est générée par la classe de type en python, et le nombre 1 est généré par la classe int.
bloc de code :
b = "abc"
print(type(b))
print(type(str))
Sortie console :
<class 'str'>
<class 'type'>
De même, la classe str est également générée par la classe type, et la chaîne « abc » est générée par str.
class Student:
pass
stu = Student()
print(type(stu))
print(type(Student))
La sortie est :
<class '__main__.Student'>
<class 'type'>
Expliquez que la classe Student personnalisée est également générée par la classe de type.
classe d'objet
La classe obj est la classe de niveau supérieur (classe de base) dont toutes les classes héritent.
Remarque : type est également une classe et type est également un objet.
print(type.__base__)
print(type(object))
sortir:
<class 'object'>
<class 'type'>
C'est-à-dire que le type et l'objet sont des pointeurs l'un vers l'autre, la classe de type est l'instanciation de l'objet et l'objet est l'héritage du type.
Trois caractéristiques d'un objet
- identité (identifiant)
- taper
- valeur
Types intégrés courants en python
Aucun (il n'y en a qu'un dans le monde)
Lorsque l'interpréteur python démarre, il génère automatiquement un objet None (le seul au monde)
a = None
b = None
print(id(a),id(b))
140717902960768 140717902960768
On peut constater que les identifiants de a et b sont les mêmes, indiquant qu'ils pointent vers la même adresse, ce qui prouve que le type None est le seul type au monde.
type de valeur
- entier
- flotter
- complexe
- bourdonner
mappage (dict)
Les objets mappent des valeurs immuables à des objets arbitraires. Les cartes sont des objets modifiables. Actuellement, il n'y a qu'un seul dictionnaire de type de mappage standard
rassembler
- ensemble
- gelé
type de gestionnaire de contexte (avec)
Un gestionnaire de contexte est un objet qui implémente le protocole de gestion de contexte. Il est principalement utilisé pour sauvegarder et restaurer divers états globaux, fermer des fichiers, etc. Le gestionnaire de contexte lui-même est une sorte de décorateur.
type de séquence
- liste
- octets
- gamme
- tuple
- chaîne
- déployer
autre
Type de module, classe et instance, type de fonction, type de méthode, type de code, objet objet, type type, type type...
fonction magique
Qu'est-ce qu'une fonction magique
Les fonctions définies en python qui commencent et se terminent par des doubles traits de soulignement sont appelées fonctions magiques
class Company(object):
def __init__(self,employee_list):
self.employee = employee_list
def __getitem__(self, item):
return self.employee[item]
company = Company(['tom','bob','xiaoming'])
for i in company:
print(i)
tom
bob
xiaoming
Lorsque la boucle for parcourt l'objet company, elle recherchera automatiquement la fonction magique __getitem__ dans la classe qui constitue l'objet
Le modèle de données en python et l'impact du modèle de données sur la syntaxe python
Les modèles de données ne sont vraiment que des fonctions magiques. Parce que nous définissons un modèle de données qui déclare que sa définition utilisera la fonction magique. Par exemple, la classe après la définition de la fonction magique __getitem__ ci-dessus devient un objet itérable.