擅长:python、mysql、java
<p>所以我能理解的是你有一个很长的函数,比如:</p>
<pre><code>def long_func(blah, foo, *args):
...
...
my_val = long_func(foo, blah, a, b, c)
</code></pre>
<p>你所做的是:</p>
^{pr2}$
<p>你还有很多选择,我列出两个:</p>
<ol>
<li><p>把它变成一个班</p>
<pre><code>class SomeName(object):
def __init__(self, blah, foo, *args):
self.blah = blah
self.foo = foo
self.args = args
self.result = None # Might keep this for returning values or see (2)
def short_func1(self):
...
def short_func2(self):
...
def run(self): # name it as you like!
self.short_func1()
self.short_func2()
return self.result # (2) or return the last call, on you
...
my_val = SomeName(foo, blah, a, b, c).run()
</code></pre></li>
<li><p>制作另一个模块并将<code>short_funcs</code>放入其中。就像flyx建议的那样。在</p>
<pre><code>def long_func(foo, blah, *args):
from my_module import short_func1, short_func2
short_func1(foo)
short_func2(blah)
</code></pre></li>
</ol>