Red de conocimiento informático - Problemas con los teléfonos móviles - ¿Hay punteros en Python?

¿Hay punteros en Python?

Si has trabajado con un lenguaje de bajo nivel como C o C++, probablemente hayas oído hablar de los punteros. Los punteros le permiten aumentar la eficiencia en ciertas partes de su código. Los consejos también pueden resultar confusos para los principiantes y pueden provocar todo tipo de errores de gestión de la memoria incluso para los expertos. Entonces, ¿existen punteros en Python?

Los punteros se utilizan ampliamente en C y C++. Básicamente, son variables que contienen la dirección de memoria de otra variable. Para obtener la información más reciente sobre punteros, consulte esta descripción general de los punteros C.

¿Por qué Python no tiene punteros?

En realidad, aún no se sabe por qué los punteros no existen; tal vez los punteros violan el Zen de Python. Los indicadores fomentan cambios implícitos en lugar de cambios explícitos. Pero los consejos suelen ser más complejos que simples, especialmente para los principiantes. Peor aún, usan punteros para señalar sus propios métodos o hacen cosas realmente peligrosas como leer desde una variable a la que no tienes acceso.

Python prefiere intentar abstraer direcciones de memoria del usuario para implementar funciones específicas, por lo que Python generalmente se centra en la usabilidad más que en la velocidad. Por lo tanto, los punteros no significan mucho en Python. Pero en algunos casos, Python le brinda algunos beneficios al usar punteros.

Para comprender los punteros en Python, necesita conocer los detalles específicos de cómo Python implementa la funcionalidad de los punteros. En resumen, necesitas conocer los siguientes puntos:

Objetos inmutables y mutables Objetos en Python

Variables/Nombres en Python Variables en Python

La implementación de punteros simulados en Python.