<分区> 分区>
我有一个函数 compute_params(),它计算我想在另一个函数中使用的许多变量,比如 main_func()。目前,我的代码类似于:
def compute_params(i):
a = i/2
b = a + 2.
c = 2*a/b - 1.
d = a + b + c
e = ((a + 1.)**2 - d)/c
# ...and so on with more complex computations and more variables.
return a, b, c, d, e
def main_func(imax):
for i in range(imax):
a, b, c, d, e = compute_params(i)
# Do something with a, b, c, ...
我的问题是:
- 考虑到速度问题,返回并获取 5、10 个变量(或者在我的现实生活中的函数中更多)是否有问题?
- 如果第一个问题的答案是肯定的,考虑到我需要在
main_func()中保留真实的变量名称(以把它们放在大方程式中)?
注意:只是为了理解我为什么要这样做,我的函数 compute_params() 在我的代码中的不同地方使用,这就是为什么它的内容没有直接包含在 main_func( )。
编辑 以回答我的几个建议:我想避免使用类或字典,因为 (1) 我的变量唯一的共同点是在同一个方程式中有用,因此有没有合乎逻辑的理由将它们分组到一个对象中,最重要的是 (2) 因为这些系数在已经很难阅读的复杂方程中出现数百次,所以我想避免像 params.a + params.b/这样的东西params.c 我目前简单地写了 a + b/c。
