擅长:python、mysql、java
<p>我不知道这是否可行,但是使用像multimethods这样的库来实现一个多分派函数来完成您需要的任务呢?我的互联网出现了DNS问题,因此我无法查找语法,因此您将得到伪代码,而不是真正的Python,但以下是我所说内容的基本概念:</p>
<pre><code>def send_to(data, consumer):
workfunc = dispatch(type(consumer))
workfunc(data, consumer)
def send_to_list(data, consumer):
consumer.append(data)
def send_to_set(data, consumer):
consumer.add(data)
def send_to_file_obj(data, consumer):
consumer.write(data)
</code></pre>
<p>当然,将工作函数与调度函数连接起来需要一些管道,这是我现在实际上无法查找的地方,因为我的DNS已关闭。(幸运的是,StackOverflow仍在我的浏览器缓存中)。所以,我担心这个答案过于笼统,缺乏细节,但希望它至少能为你指明一个有用的方向。在</p>