我希望对函数有某种引用,但我不知道是否需要使用某种def f(x)
或lambda
。
例如我想print f(3)
并输出9a
,或者这不是python的工作方式?
第二个问题:假设我有一个工作函数,我该如何返回它的degree
?
答案 0 :(得分: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
不是内置数据类型。但是,可能有一些很好的库定义了这样的类。
答案 1 :(得分:1)
Python(以及大多数其他计算机语言)不执行代数,如果您想要这样的符号输出,这就是您需要的代数。但是你可以有一个函数f(a,x)
,它返回a
的特定(数值)值的结果:
def f(a, x):
return a*x*x
但如果您想要一个实际为您做代数的程序或语言,请查看sympy或Mathematica等商业程序。
如果您只是处理多项式,而您只需要一个能够很好地处理它们的数据结构,请查看numpy and its polynomial class。
答案 2 :(得分: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()
玩得开心:)
答案 3 :(得分:0)
我通常将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])
欢呼!
答案 4 :(得分:0)
奶酪
您可以在Python中使用def
函数来创建数学函数,可以输入以下内容:
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