将参数传递给类方法的正确选项是什么

2024-04-25 04:32:13 发布

您现在位置:Python中文网/ 问答频道 /正文

哪一个是正确的? 因为我有些怀疑:(

class Foo():
    def __init__(self):
        self.bar = BAR()
    def get_foo(self, bar):
        return bar
    def foo_bar(self):
        bar = self.bar
        self.get_foo(bar)

或者

class Foo():
    def __init__(self):
        self.bar = BAR()
    def get_foo(self):
        bar = self.bar 
        return bar
    def foo_bar(self):
        bar = self.bar
        self.get_foo()

当然,我们假设在这两种方法中都会多次使用bar。你知道吗


Tags: 方法selfgetreturnfooinitdefbar
1条回答
网友
1楼 · 发布于 2024-04-25 04:32:13

当然要看情况。如果调用get_foo时使用与对象中存储的bar不同的get_foo是有意义的,那么您当然希望将其作为参数接受。另一方面,如果您只使用self.bar作为值,那么将其作为要求您始终执行self.get_foo(self.bar)的参数是没有意义的。你知道吗

如果你的get_foo真的只是返回self.bar,你应该考虑彻底摆脱它。你可以直接访问self.bar。你知道吗

相关问题 更多 >