関数に与えられた引数の名前を調べる を読んで。 func_code の存在を思い出していました。そして、この方法だと * 引数、 ** 引数の名前が取り出せないので追加を。 inspect モジュールの出番 結論から。inspect.getargspec で得られます。行われているのは func_code らのより丁寧な調査です。 inspect.getargspec を使うとデフォルト値まで取り出せるおまけがついてきます。 >>> def sample2(self, arg0, arg1=None, *args, **kwargs): ... local0 = None ... local1 = None ... abcdef = None ... >>> import inspect >>> inspect.getargspec(sample2) (['self', 'arg0', '