Python:传递函数是否会增加额外信息?

3
我有两个或更多线程(通过子类化threading.Thread创建)并行运行,并经常彼此通信。它们通过调用对方的方法进行通信。我一直在这样做,每个线程将自己作为参数传递,以便该类的所有属性立即可用。
这可能是懒惰的做法,因为我可以弄清楚一个方法需要知道哪些属性,只传递那些属性。所以我的问题是,将整个类实例传递给方法是否比仅传递相关数据效率低?
2个回答

6

它并不会更低效,但它可能会增加耦合性——也就是说,它可能会导致您的函数更加依赖于整体结构的细节。这会使代码更加脆弱——您可能需要在整个代码中进行更多的更改,以适应结构的变化。


太好了,知道了。我有一种感觉,觉得我没有以最佳方式处理事情,所以我的第一个想法是资源过度使用。不过这很有道理,谢谢。 - Kenis Regan

1

Python传递对象的引用。无论您的对象是字符串还是一个充满属性的整个类实例。

顺便说一下,正如其他答案所说,这种设计选择并不是最好的。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接