Jeden z najvýznamnejších štýlov kódovania je podľa paradigmy OOP. Na tento účel je v súčasnosti kladený dôraz na písanie kódu s modularitou, zvýšenie ladenia a vytvorenie robustnejšieho, opakovane použiteľného kódu. To všetko podporovalo používanie rôznych funkcií pre rôzne úlohy, a preto musíme poznať určité hacky funkcií. Tento článok popisuje, ako vytlačiť názov funkcie. Poďme diskutovať o určitých spôsoboch, ako to možno urobiť.
veľa štastia
Metóda 1: Získajte názov funkcie v Pythone pomocou funkcie function.__name__
Táto funkcia bola zavedená v Pythone 3 v Pythone3.
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__)> |
>
>
Výkon :
The name of function is : GFG>
Metóda 2: Získajte názov funkcie v Pythone pomocou function.func_name
Použitím jednoduchej funkcie vlastnosti funkcie, func_name, je možné získať názov funkcie, a preto môže byť celkom užitočný na účely testovania a niekedy aj na dokumentáciu. Nevýhodou je, že to funguje len pre Python2.
Python
# 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)> |
>
>
Výkon :
nahradiť reťazec reťazcom java
The name of function is : GFG>
Metóda 3: Získajte názov funkcie v Pythone pomocou atribútu __qualname__
__qualname__ poskytuje úplnejšie informácie ako __name__, a preto môže byť užitočnejšie pri ladení. Ak chcete extrahovať názov z akéhokoľvek objektu alebo triedy, môžete použiť aj jeho atribút __qualname__.
Python3
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__)> |
>
nestále kľúčové slovo java
>
Výkon :
Geekforgeeks Geekforgeeks.my_method>
Metóda 4: Získajte názov funkcie v Pythone pomocou modulu inspect
Tento kód importuje kontrolný modul a definuje funkciu get_function_name(), ktorá vracia názov funkcie. Funkcia používa funkciu inspect.currentframe() na získanie objektu frame aktuálnej funkcie a potom vráti atribút co_name atribútu f_code objektu frame, čo je názov funkcie.
Funkcia inspect.currentframe() vracia objekt frame pre rámec volajúceho. Objekt frame je inštanciou triedy FrameInfo, ktorá má niekoľko atribútov, ktoré poskytujú informácie o rámci, ako napríklad atribút f_code, čo je objekt kódu pre funkciu, a atribút co_name, čo je názov funkcie.
strojové učenie pod dohľadom
Nakoniec kód vypíše názov funkcie pomocou funkcie 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> |
>
>Výkon
The name of function is : get_function_name>
Tento prístup má časovú zložitosť O(1) a pomocný priestor O(1).