Unul dintre cele mai proeminente stiluri de codare este urmarea paradigmei OOP. Pentru aceasta, în zilele noastre, stresul a fost de a scrie cod cu modularitate, de a crește depanarea și de a crea un cod mai robust și mai reutilizabil. Toate acestea au încurajat utilizarea diferitelor funcții pentru diferite sarcini și, prin urmare, suntem obligați să cunoaștem anumite hackuri de funcții. Acest articol discută cum să tipăriți numele unei funcții. Să discutăm anumite moduri în care se poate face acest lucru.
Metoda 1: Obțineți numele funcției în Python folosind funcția.__name__
Această funcție a fost introdusă în Python 3 în Python3.
Python3
# initializing function> def> GFG():> >return> 'You just called for success !!'> # printing function name> # using function.__name__> print>(>'The name of function is : '> +> GFG.__name__)> |
>
>
mamta kulkarni
Ieșire:
The name of function is : GFG>
Metoda 2: Obțineți numele funcției în Python folosind function.func_name
Folosind o funcție simplă de proprietate a funcției, func_name, se poate obține numele funcției și, prin urmare, poate fi destul de util în scopul testarii și, uneori, de asemenea pentru documentare. Dezavantajul este că acest lucru funcționează doar pentru Python2.
Piton
if statement java
# initializing function> def> GFG():> >return> 'You just called for success !!'> # printing function name> # using function.func_name> print>(>'The name of function is : '> +> GFG.func_name)> |
>
>
Ieșire:
The name of function is : GFG>
Metoda 3: Obțineți numele funcției în Python folosind atributul __qualname__
__qualname__ oferă informații mai complete decât __name__ și, prin urmare, poate fi mai util în depanare. Pentru a extrage numele din orice obiect sau clasă, puteți utiliza și atributul său __qualname__.
Python3
10 din 10
def> Geekforgeeks():> >pass> class> Geekforgeeks(>object>):> >def> my_method(>self>):> >pass> # 'my_function'> print>(Geekforgeeks.__qualname__)> # 'My_Class.my_method'> print>(Geekforgeeks.my_method.__qualname__)> |
>
>
Ieșire:
Geekforgeeks Geekforgeeks.my_method>
Metoda 4: Obțineți numele funcției în Python folosind modulul de inspectare
Acest cod importă modulul de inspectare și definește o funcție get_function_name() care returnează numele funcției. Funcția folosește funcția inspect.currentframe() pentru a obține obiectul cadru al funcției curente și apoi returnează atributul co_name al atributului f_code al obiectului cadru, care este numele funcției.
Funcția inspect.currentframe() returnează un obiect cadru pentru cadrul apelantului. Obiectul cadru este o instanță a clasei FrameInfo, care are mai multe atribute care oferă informații despre cadru, cum ar fi atributul f_code, care este obiectul cod pentru funcție și atributul co_name, care este numele funcției.
În cele din urmă, codul imprimă numele funcției folosind funcția get_function_name().
Python3
import> inspect> # initializing function> def> get_function_name():> ># get the frame object of the function> >frame>=> inspect.currentframe()> >return> frame.f_code.co_name> # printing function name> print>(>'The name of function is : '> +>get_function_name())># test_function> #This code is contributed by Edula Vinay Kumar Reddy> |
minim maxim
>
>Ieșire
The name of function is : get_function_name>
Această abordare are o complexitate de timp de O(1) și un spațiu auxiliar de O(1).