Passer un entier par référence en Python
En Python, les variables sont passées par valeur, ce qui signifie que toute modification apportée à un objet dans un la fonction n’affecte pas la variable d’origine. Cependant, il existe des techniques pour simuler le passage par référence d'entiers.
Solution de contournement : utilisation de conteneurs mutables
Une solution consiste à transmettre l'entier dans une liste ou un tuple mutable. En modifiant le conteneur mutable, vous pouvez effectivement modifier l'entier indirectement.
def change(x): x[0] = 3 x = [1] change(x) print(x) # Output: [3]
Comprendre les entiers immuables
Les entiers Python sont des types immuables. Cela signifie que vous ne pouvez pas modifier directement leurs valeurs. L'opérateur d'affectation (=) lie le résultat de l'évaluation du côté droit au côté gauche. Vous ne pouvez donc pas remplacer un entier par une valeur différente sans créer un nouvel objet.
Bonnes pratiques.
Au lieu d'essayer de passer un entier par référence, il est généralement préférable de :
Exemple :
def multiply_by_2(x): return 2*x x = 1 x = multiply_by_2(x) print(x) # Output: 2
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!