Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Getting list of parameter names inside python function [duplicate]

Possible Duplicate:
Getting method parameter names in python

Is there an easy way to be inside a python function and get a list of the parameter names?

For example:

def func(a,b,c):     print magic_that_does_what_I_want()  >>> func() ['a','b','c'] 

Thanks

like image 352
R S Avatar asked Feb 24 '09 14:02

R S


1 Answers

Well we don't actually need inspect here.

>>> func = lambda x, y: (x, y) >>>  >>> func.__code__.co_argcount 2 >>> func.__code__.co_varnames ('x', 'y') >>> >>> def func2(x,y=3): ...  print(func2.__code__.co_varnames) ...  pass # Other things ...  >>> func2(3,3) ('x', 'y') >>>  >>> func2.__defaults__ (3,) 

For Python 2.5 and older, use func_code instead of __code__, and func_defaults instead of __defaults__.

like image 61
simplyharsh Avatar answered Sep 23 '22 06:09

simplyharsh