Доступ к именам функций изнутри функций
В Python определение имени функции изнутри самой функции может быть полезно в ситуациях, когда динамический самоанализ требуется.
Модуль проверки предоставляет удобный механизм получения информации о коде работающей программы. Используя Inspect.stack(), мы можем получить доступ к списку кадров, представляющих текущий стек вызовов.
Для данной функции первый кадр в списке стека соответствует текущей функции, а второй кадр представляет ее звонящий. Чтобы получить доступ к имени функции, мы можем извлечь третий элемент первого кадра в стеке с помощью Inspect.stack()0.
Вот пример:
import inspect
def foo():
print("my name is", inspect.stack()[0][3])
foo()
Этот код напечатает:
my name is foo ````
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3