擅长:python、mysql、java
<p>您应该能够使用<code>**kwargs</code>做您想做的事情。例如:</p>
<pre><code>def my_args_are(**kwargs):
return "my_args_are({})".format(
", ".join("{0} = {1!r}".format(arg, val)
for arg, val in kwargs.items()))
</code></pre>
<p>它的工作原理是:</p>
<pre><code>>>> my_args_are(param1 = 1, param2 = "cheese")
"my_args_are(param1 = 1, param2 = 'cheese')"
</code></pre>
<p>如果不想硬编码名称,可以使用<a href="https://stackoverflow.com/a/5067654/565635">^{<cd2>}</a>:</p>
<pre><code>import inspect
def my_args_are(**kwargs):
fname = inspect.currentframe().f_code.co_name
argstr = ", ".join("{0} = {1!r}".format(arg, val)
for arg, val in kwargs.items()))
return "{}({})".format(fname, argstr)
</code></pre>