陪伴而非守候
我不能完全遵循,但我认为你是一些神秘的组合等。xyzp0, ta, ya在这种情况下,您应该将价格计算放入一个单独的函数中,例如def calc_price(p0, ta, ya, tb, yb, cb, delta1_y, delta2_y): return xyz # calculated with these inputsdef prc_chgd(p0, ta, ya, tb, yb, cb, delta1_y, delta2_y): price = calc_price(p0, ta, ya, tb, yb, cb, delta1_y, delta2_y) ans = price * abcdef hedge(p0, ta, ya, tb, yb, cb, delta1_y, delta2_y): price = calc_price(p0, ta, ya, tb, yb, cb, delta1_y, delta2_y) ans = price * xxxx如果你想避免你的被计算两次,你也可以做pricedef calc_price(p0, ta, ya, tb, yb, cb, delta1_y, delta2_y): return xyz # calculated with these inputsdef prc_chgd(price): ans = price * abcdef hedge(price): ans = price * xxxx并将其留给呼叫者呼叫的频率。calc_price()
婷婷同学_
如果需要,可以从函数中返回多个值:def prc_chgd(p0, ta, ya, tb, yb, cb, delta1_y, delta2_y): price = xyz ans = price*abc return price, ansdef hedge(p0, ta, ya, tb, yb, cb, delta1_y, delta2_y): price, ans = prc_chgd(p0, ta, ya, tb, yb, cb, delta1_y, delta2_y) ans = price*xxxx
九州编程
返回多个返回值的函数应该在 python 中产生:def prc_chgd(p0, ta, ya, tb, yb, cb, delta1_y, delta2_y): price = xyz yield price ans = price*abc yield ans您可以根据需要生成任意数量的值。然后,您可以循环访问 for 循环中的所有答案:for total in prc_chgd(1,2,3,4,5,6,7,8): print total首先,它将打印价格,然后是 price*abs。由于这两个函数属于一起,我建议使用一个类。