CodeGym /Cursos /Python SELF ES /Importantes adiciones

Importantes adiciones

Python SELF ES
Nivel 5 , Lección 6
Disponible

6.1 Las variables son referencias

En Python, las variables son referencias a objetos, no la variable misma. Esto significa que, cuando creas una variable en Python, solo estás creando una referencia a un objeto en la memoria.

Esta característica del lenguaje tiene importantes implicaciones para trabajar con variables, especialmente al pasar objetos a funciones o asignarlos a otras variables.

Cuando creas una variable y le asignas un valor, Python asigna un objeto en la memoria para ese valor y convierte la variable en una referencia a ese objeto. Si asignas una variable a otra, la nueva variable referenciará al mismo objeto que la variable original. Esto significa que los cambios realizados a través de una variable se reflejarán en la otra, si el objeto es mutable.

Ejemplo:


a = [1, 2, 3]
b = a
b.append(4)
print(a)  # Imprimirá: [1, 2, 3, 4]

Agregamos el número 4 a la variable b, pero también se agregó a la lista en la variable a, porque en realidad ambas variables son solo referencias al objeto lista [1, 2, 3].

6.2 Objetos inmutables

En Python, los objetos se dividen en mutables e inmutables. Los objetos mutables, como listas y diccionarios, se pueden modificar después de ser creados.

Los objetos inmutables, como cadenas y números, no pueden ser modificados después de su creación. Cuando trabajas con objetos inmutables, los cambios resultan en la creación de un nuevo objeto:

Asignar nunca cambia un objeto:


a = 5  # a almacena una referencia al objeto 5
b = a  # b también almacena una referencia al objeto 5
b = 3  # ahora b almacena una referencia al objeto 3
print(a)  # Imprimirá: 5               

Un objeto se puede modificar llamando a su función:


a = [1, 2, 3]
b = a
b.append(4)
print(a)  # Imprimirá: [1, 2, 3, 4]                              

Pero hay objetos inmutables que tienen funciones. Estas funciones no cambian el objeto original, sino que devuelven uno nuevo que contiene el nuevo resultado:


name = "Alex"
print(name)  # Imprimirá: Alex
name2 = name.lower() 
print(name2)  # Imprimirá: alex               

Las cadenas son objetos inmutables. Y aunque tienen métodos, estos métodos nunca cambian el objeto cadena; en su lugar, siempre devuelven una nueva cadena (un nuevo objeto). El objeto antiguo permanece igual.

6.3 Trabajo con el tipo None

En Python, hay un tipo de datos especial que representa la ausencia de valor: None. Se utiliza para indicar variables vacías o como valor de retorno de funciones que no devuelven nada. Comprender None es importante para gestionar el comportamiento del programa, especialmente en el contexto de los operadores condicionales y el manejo de datos.

Bases para el uso de None

None es la única instancia de la clase NoneType. Se utiliza para indicar que una variable no tiene valor. En condiciones, None se evalúa como falso (False).


a = None
if a:
    print("a es True")
else:
    print("a es None o False")

Comparación con None

La comprobación de una variable respecto a None debe hacerse usando el operador is, no ==. El operador is verifica la identidad, no la igualdad de valores.


a = None
if a is None:
    print("a es None")
else:
    print("a tiene valor")

None en funciones

None se usa frecuentemente en funciones que no deben devolver un valor explícito. Si una función no devuelve valor, implícitamente devuelve None.


def func():
    print("Esta función devuelve None")

result = func()
print(result)  # Imprimirá: None

None y listas

None puede ser usado en listas, tuplas u otras colecciones para indicar la ausencia de un elemento en una posición específica.


my_list = [1, None, 3]
print(my_list)  # Imprimirá: [1, None, 3]
1
Опрос
Conversión de tipos,  5 уровень,  6 лекция
недоступен
Conversión de tipos
Conversión de tipos
Comentarios
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION