Python est un langage unique, très différent du langage C. De nombreux nouveaux venus dans Python disent ne pas comprendre les variables et les affectations. Quiconque a étudié le C sait que lors de l'attribution de valeurs aux variables, vous devez spécifier. le type de données en premier. En même temps, une zone mémoire sera ouverte pour stocker les valeurs, par exemple :
inta =1;
a est une petite partie de l'espace mémoire. Une zone de bloc est comme une petite boîte dans une grande pièce. La tâche consiste à charger l'entier 1 dans la boîte. Maintenant, réaffectez la variable a a =2; La boîte est toujours la même, ce qui signifie que l'adresse mémoire n'a pas changé , mais la valeur dans ce segment de mémoire a changé, devenant 2. Regardez à nouveau : intb = a; Lors de l'attribution d'une variable a à une autre variable b, cela équivaut à attribuer la valeur Une copie est transmise à la variable b, qui est une zone mémoire nouvellement ouverte En Python, le nom strict de "variable" est "nom", qui peut aussi être compris comme une étiquette, tout comme nos noms , un nom est une étiquette attachée à une personne. Par exemple, le message d'erreur ci-dessus est que le nom « a » n'est pas défini, mais n'est pas appelé variable. En Python, attribuer une valeur à une variable équivaut à étiqueter un objet, tout comme nous donnons des noms aux personnes. La variable elle-même n'a aucune signification, elle n'a aucune information de type et les vraies informations sont dans le. objet. Par exemple : a =1 Python allouera d'abord un espace mémoire pour créer l'objet entier 1, puis donnera celui-ci attache une étiquette nommée a. Ensuite, exécutez a=2Python créera alors un objet entier 2 dans une autre zone mémoire, puis arrachera l'étiquette a de 1 et la collera sur 2 À ce stade, nous ne pouvons plus obtenir la valeur 1 via a. Maintenant, attribuez le nom a à un autre nom bb = a équivalent Yu a mettez une nouvelle étiquette b sur 2 tout à l'heure. Notez que c'est complètement différent du langage C. Il n'est pas nécessaire d'allouer de l'espace mémoire lors de la définition de b. De cette façon, nous pouvons accéder à 2 via a ainsi que via b. pour la visite 2, vous interviewez tous la même personne, tout comme lorsque nous nommons un bébé avec à la fois un surnom et un grand nom, en fait, ils sont tous nommés par la même personne. Bien que nous utilisions habituellement le nom « variable » en Python (car c'est un nom courant dans les langages de programmation), nous devons comprendre que les variables en Python sont différentes des autres langages. Les variables ne sont qu'un nom. Après avoir compris les variables et les affectations en Python, regardons le passage des paramètres de la fonction, comme suit : Quand la variable globale g est passée à la fonction fun_a , ce qui équivaut à ce que le paramètre a dans la fonction soit attaché à 0 comme étiquette, puis a est réaffecté (a=a+4), ce qui équivaut à arracher l'étiquette a de 0 et à l'attacher à 4, puis g est toujours sur l'étiquette 0. En regardant à nouveau cette fonction, elle passe un objet liste Les mêmes que les étapes précédentes, les noms et n_list sont les deux étiquettes sur ['a', 'b', 'c'], sauf que le 0ème élément de la liste a été réaffecté, mais les noms et n_list sont toujours attachés à cet objet de liste, bien que n_list La valeur soit mise à jour, mais l'objet est toujours l'objet original. C'est comme si Zhang San et Xiao Zhang étaient tous les deux la même personne. Maintenant, lorsque vous changez de vêtements pour Xiao Zhang, vous changez en fait de vêtements pour Zhang San. La personne est toujours la même personne, mais les choses sur elle ont changé. Tutoriels associés :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!