freeCodeCamp/guide/spanish/python/mutability-and-variable-ass.../index.md

2.8 KiB
Raw Blame History

title localeTitle
Python Mutability and Variable Assignments Mutabilidad Python y asignaciones de variables

Cada objeto tiene una identidad, un tipo y un valor. La identidad de un objeto nunca cambia una vez que ha sido creado; usted puede pensar en ello como la dirección del objeto en la memoria. fuente

Una vez object se crea un object , el tipo y la identidad no se pueden cambiar. Si los valores del objeto pueden cambiar o no después de la creación, se determina si el objeto es mutable (puede cambiar) o inmutable (no puede cambiar).

Hasta ahora hemos aprendido sobre algunos tipos de objetos y sus subclases: string y objetos numéricos (enteros, de punto flotante, complejos y booleanos). Todos estos son objetos inmutables .

Este concepto puede ser confuso al principio porque lo bueno es un objeto si no puede modificarlo. Lo que hace que estos objetos sean utilizables es la capacidad de asignar y reasignar variables. Las funciones y los operadores pueden devolver nuevos objetos que pueden asignarse a variables.

Usando la función de identificación integrada , que devuelve la identidad de un objeto, podemos ver cómo funciona esto.

Aquí hay algunas cosas a tener en cuenta:

  • Asignar una variable no significa que la variable sea el objeto . Utilizamos un lenguaje muy específico que indica que las instrucciones de asignación unen un nombre (identificador) a un objeto . Las variables pueden ser reasignadas:

`pitón

a = 1 # Unir a un objeto.
id (a)
140355241530152
a = 2 # Rebindir a otro objeto.
id (a)
140355241530128
`

  • Asignar dos variables diferentes a objetos inmutables con el mismo valor puede resultar (no garantizado) en que estén vinculados al mismo objeto

`pitón

a = 1
b = 1
id (a)
140355241530152
id (b) # En este caso a y b están vinculados al mismo objeto.
140355241530152
`

  • Asignar dos variables diferentes a objetos imutables con valores diferentes siempre dará como resultado que estén vinculados a objetos diferentes:

`pitón

a = 1
b = 2
id (a)
140355241530152
id (b) # a y b están vinculados a diferentes objetos.
140355241530128
`

  • La reasignación de variables no cambia el objeto original, las vincula a un objeto diferente.

`pitón

a = 1
b = 1
id (a)
140355241530152
id (b)
140355241530152
a = 2
id (a) # a es rebote a un objeto diferente.
140355241530128
id (b) # b todavía está vinculado al objeto original.
140355241530152
`