python在自变量中存储与传递到d

2024-05-08 04:32:45 发布

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

如何在类中的方法之间传递变量? 像这样,作为一个论点:

class Yadayada:
    def foo(self):
        for i in somelist:
            pass_var = i * blah blah blah
            output = self.bar(pass_var)

    def bar(self,pass_var):
        a= pass_var * whatever
        return a

或者像这样,把它存储在一个变量中?在

^{pr2}$

最好的方法是什么?为什么?或者这有关系吗? 注意:我不会在其余代码中使用变量pass_var。在


Tags: 方法inselfforoutputfoovardef
1条回答
网友
1楼 · 发布于 2024-05-08 04:32:45

这是一个设计决定。将其作为参数传递将在该函数的生命周期内保持传递的值。将它作为一个属性存储在对象上,将在实例的生命周期中保留它——这可能要长得多。在

您应该扪心自问,这个值有助于描述实例还是实例拥有的东西?-如果这两种情况中有一种是真的,那么就保存它。在

如果它只是用来计算一个值的东西(听起来是这样的),那么就没有理由存储它了。存储它意味着您希望以后使用它。在

如果不确定,请在将值传递给函数时出错。这减少了出错的机会(在类上没有设置值时调用函数),并且减少了正在使用的内存量。在

相关问题 更多 >