【问题标题】:How to pass values to a formula?如何将值传递给公式?
【发布时间】:2021-04-16 02:36:27
【问题描述】:

如何在 python 中将值说12,32,34 传递给公式x+y+z 而无需手动分配? 我试过使用**args,但结果是None

def myFormula(*args):
    lambda x, y: x+y+z(*args)
print(myFormula(1,2,3))

【问题讨论】:

    标签: python string function math integer


    【解决方案1】:

    试试这个:

    formula = lambda x,y,z: x+y+z
    print(formula(1,2,3))
    

    这里不需要使用 *args。

    这里是一个使用公式的函数的例子

    # a = (v - u)/t
    acceleration = lambda v, u, t: (v - u)/t
    print(acceleration(23, 12, 5)
    

    【讨论】:

      【解决方案2】:

      只需使用sum:

      print(sum([1, 2, 3]))
      

      输出:

      6
      

      如果你想要def,试试这个:

      def myFormula(*args):
          return sum(args)
      print(myFormula(1, 2, 3))
      

      输出:

      6
      

      【讨论】:

        【解决方案3】:

        常规函数不需要进行任何手动分配:

        def myFormula(x,y,z):
            return sum((x,y,z))
        
        print(myFormula(1,2,3))
        

        在这种情况下,您可以像这样处理任意数量的参数:

        def myFormula(*args):
            return sum(args)
        
        print(myFormula(1,2,3,4))
        

        【讨论】:

          猜你喜欢
          • 2013-01-18
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多