Как получить имя класса в Python? 🐍
Чтобы получить название класса в Python, вы можете использовать функцию __class__.__name__
. Вот пример:
class MyClass:
pass
obj = MyClass()
print(obj.__class__.__name__) # Выводит "MyClass"
Детальный ответ
Как получить имя класса в Python
В Python есть несколько способов получить имя класса объекта. Давайте рассмотрим несколько вариантов с примерами кода.
Метод __class__
class MyClass:
pass
obj = MyClass()
class_name = obj.__class__.__name__
print("Имя класса:", class_name)
В этом примере мы создаем класс MyClass и создаем экземпляр объекта obj из этого класса. Затем мы используем атрибут __class__ у объекта, который вернет класс, к которому он принадлежит. Мы можем получить имя класса, обратившись к атрибуту __name__ класса.
Вывод программы будет: Имя класса: MyClass
Функция type
class MyClass:
pass
obj = MyClass()
class_name = type(obj).__name__
print("Имя класса:", class_name)
Другой способ получить имя класса - использовать функцию type(). Мы можем передать объект в качестве параметра в функцию type() и использовать атрибут __name__ для получения имени класса.
Вывод программы будет: Имя класса: MyClass
Метод __class__.__name__
class MyClass:
pass
obj = MyClass()
class_name = obj.__class__.__name__
print("Имя класса:", class_name)
Это аналогичный метод первому примеру, но с использованием одного дополнительного подчеркивания. Также мы можем обратиться к атрибуту __name__ напрямую без обращения к функции type().
Вывод программы будет: Имя класса: MyClass
Рефлексия
class MyClass:
pass
obj = MyClass()
class_name = obj.__class__.__name__
print(class_name)
print(globals()[class_name])
Еще один незамысловатый способ получить имя класса - использовать рефлексию. Мы можем получить имя класса как строку и затем использовать функцию globals() для доступа к глобальным переменным в нашей программе.
Этот способ может оказаться полезным, когда у нас есть только имя класса в виде строки и мы хотим получить сам класс в коде.
Заключение
В этой статье мы рассмотрели несколько способов получить имя класса в Python. Вы можете выбрать тот, который наиболее удобен в вашем конкретном случае.