8

我想对某个函数进行某种引用,但我不知道是否需要使用某种类型的 adef f(x)或 a 。lambda

例如,我想让print f(3)它输出9a,或者这不是 python 的工作方式?

第二个问题:假设我有一个工作功能,我该如何返回degree它?

4

5 回答 5

7

要创建一个函数,您需要定义它。函数可以做任何事情,但它们的主要使用模式是获取参数和返回值。您必须决定它如何将参数转换为返回值。

例如,如果你想f(x)返回一个数字,那么a也应该是一个全局或函数内部定义的数字变量:

In [1]: def f(x):
   ...:     a = 2.5
   ...:     return a * x**2
   ...: 

In [2]: f(3)
Out[2]: 22.5

或者,也许您希望它返回如下字符串:

In [3]: def f(x):
   ...:     return str(x**2) + 'a'
   ...: 

In [4]: f(3)
Out[4]: '9a'

如果您需要更多帮助,则必须说明您的需求。


编辑:事实证明,您想使用多项式或代数函数作为对象,并用它们做一些代数的东西。Python 将允许这样做,但不允许使用标准数据类型。您可以为多项式定义一个类,然后定义任何方法或函数以获得最高幂或其他任何内容。但Polynomial不是内置数据类型。不过,可能有一些很好的库定义了这样的类。

于 2012-11-24T18:21:13.347 回答
2

Python(和大多数其他计算机语言)不做代数,如果你想要这样的符号输出,这就是你所需要的。但是你可以有一个函数f(a,x)返回特定(数字)值的结果a

def f(a, x):
   return a*x*x

但是如果你想要一个真正为你做代数的程序或语言,请查看像 Mathematica 这样的sympy或商业程序。

如果您只是使用多项式,并且只需要一个可以很好地处理它们的数据结构,请查看numpy 及其多项式类

于 2012-11-24T18:31:55.413 回答
1

我通常将 lambda 用于简短的函数:

f = lambda a, x: a * x**2

这里 a 和 x 是我的函数的参数。您需要输入 a 和 x

f(2,4)

如果您想要 a 作为常量参数,例如。a=2:

f = lambda x: 2 * x**2
f(5)

如果您有 x 的输入值列表,则可以将 map 与 lambda 结合使用。它直截了当且易于阅读。

(*map(lambda x: 3 * x**2, [1,2,3,4]),) 

或者

list(map(lambda x: 3 * x**2, [1,2,3,4])

干杯!

于 2020-05-04T09:49:32.310 回答
0
def func():
    print "F(x) = 2x + 3"
    x = int(raw_input('Enter an integer value for x: '))
    Fx = 2 * x + 3
    return Fx

print func()

玩得开心 :)

于 2016-12-06T01:25:41.213 回答
0

起司,

你可以使用defPython 中的函数来创建一个数学函数,你可以输入:

def f(x):
    return(2x + (3 + 3) * 11 + 88) # <- you could make your own function.

print(f(3))

日志:

220

那样

或者在这个:

def f(a, x):
    return((a + x) ** (a * x))

然后...

print(f(1, 2))

日志...

6
于 2020-06-19T18:59:18.793 回答