Можно использовать встроенную функцию getattr(object, attribute_name, default).
Пример:
def get_attribute(obj, attribute_name, default=None):
    return getattr(obj, attribute_name, default)
  Если атрибут не существует и default не указан, будет выброшено исключение AttributeError.
Для создания метода, который возвращает значение атрибута объекта в Python, можно использовать несколько подходов. Наиболее простой и распространенный - это непосредственное обращение к атрибуту через self внутри метода.
Пример 1: Прямое обращение к атрибуту
class MyClass:
    def __init__(self, my_attribute):
        self.my_attribute = my_attribute
    def get_my_attribute(self):
        return self.my_attribute
# Пример использования
obj = MyClass("Привет, мир!")
value = obj.get_my_attribute()
print(value)  # Вывод: Привет, мир!
  В этом примере метод get_my_attribute() просто возвращает значение атрибута self.my_attribute.
Пример 2: Использование getattr() (более гибкий подход)
class MyClass:
    def __init__(self, my_attribute):
        self.my_attribute = my_attribute
    def get_attribute(self, attribute_name):
        return getattr(self, attribute_name)
# Пример использования
obj = MyClass("Привет, мир!")
value = obj.get_attribute("my_attribute")
print(value) # Вывод: Привет, мир!
# Пример с обработкой исключений, если атрибута не существует
try:
    value = obj.get_attribute("non_existent_attribute")
    print(value)
except AttributeError:
    print("Атрибут не найден")
  Здесь метод get_attribute() принимает имя атрибута в виде строки и использует функцию getattr() для получения его значения.  Этот подход более гибкий, так как позволяет возвращать значение любого атрибута, имя которого передано в качестве аргумента. Он также позволяет добавить обработку исключений AttributeError, если указанный атрибут не существует.
Выбор подхода:
self.my_attribute обычно предпочтительнее из-за своей простоты и читаемости.getattr() будет более подходящим.