我想对某个函数进行某种引用,但我不知道是否需要使用某种类型的 adef f(x)
或 a 。lambda
例如,我想让print f(3)
它输出9a
,或者这不是 python 的工作方式?
第二个问题:假设我有一个工作功能,我该如何返回degree
它?
要创建一个函数,您需要定义它。函数可以做任何事情,但它们的主要使用模式是获取参数和返回值。您必须决定它如何将参数转换为返回值。
例如,如果你想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
不是内置数据类型。不过,可能有一些很好的库定义了这样的类。
Python(和大多数其他计算机语言)不做代数,如果你想要这样的符号输出,这就是你所需要的。但是你可以有一个函数f(a,x)
返回特定(数字)值的结果a
:
def f(a, x):
return a*x*x
但是如果你想要一个真正为你做代数的程序或语言,请查看像 Mathematica 这样的sympy或商业程序。
如果您只是使用多项式,并且只需要一个可以很好地处理它们的数据结构,请查看numpy 及其多项式类。
我通常将 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])
干杯!
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()
玩得开心 :)
起司,
你可以使用def
Python 中的函数来创建一个数学函数,你可以输入:
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