Acceder a las propiedades de clase desde cadenas en Python
Acceder a las propiedades de clase desde cadenas puede ser una técnica útil en varios escenarios de programación. Considere la siguiente definición de clase:
class User:
def __init__(self):
self.data = []
self.other_data = []
def doSomething(self, source):
# Access class property based on string value
Solución:
Para acceder a una propiedad de clase dinámicamente según un valor de cadena, puede usar la función getattr(). Aquí se explica cómo:
x = getattr(self, source)
En este ejemplo, self representa la instancia de la clase Usuario y source es una cadena que contiene el nombre de la propiedad a la que desea acceder. Por ejemplo, si la fuente es 'other_data', el código recuperará la propiedad self.other_data.
Implementación:
Dentro del método doSomething(), puedes implementar el acceso a la propiedad es el siguiente:
def doSomething(self, source):
if hasattr(self, source):
x = getattr(self, source)
Esto verifica si la propiedad fuente existe en la clase antes de acceder a ella.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3