Python 如何编写形式为f(g(x))的复合函数?

Python 如何编写形式为f(g(x))的复合函数?,python,python-3.x,numpy,scipy,discrete-mathematics,Python,Python 3.x,Numpy,Scipy,Discrete Mathematics,我想写一个形式为f(g(x))的复合函数,其中g(x)将作为用户的输入,然后对于不同的x,f(g(x))将被创建为向量,以便它们可以作为其他问题的输入 我希望这个复合函数位于另一个函数中,该函数使用f(g(x))的值来计算其他内容。这在Python中是完全惯用的(实际上还有许多其他语言),它的工作方式完全符合您的需要: >>> def f(x): ... return x+5 ... >>> def g(x): ... return x*3 .

我想写一个形式为f(g(x))的复合函数,其中g(x)将作为用户的输入,然后对于不同的x,f(g(x))将被创建为向量,以便它们可以作为其他问题的输入


我希望这个复合函数位于另一个函数中,该函数使用f(g(x))的值来计算其他内容。

这在Python中是完全惯用的(实际上还有许多其他语言),它的工作方式完全符合您的需要:

>>> def f(x):
...     return x+5
...
>>> def g(x):
...     return x*3
...
>>> f(g(5))  # (5*3) + 5
20
>>> f(g(4))  # (4*3) + 5
17
>>> x = np.array([1, 2, 3, 4])
>>> f(g(x))  # ([1, 2, 3, 4]*3) + 5
array([ 8, 11, 14, 17])

只要函数
g
的返回值可以用作
f
的输入,您就可以按照编写它的方式来做:
f(g(input))
这在Python中是完全惯用的(实际上还有许多其他语言),它的工作方式完全符合您的需要:

>>> def f(x):
...     return x+5
...
>>> def g(x):
...     return x*3
...
>>> f(g(5))  # (5*3) + 5
20
>>> f(g(4))  # (4*3) + 5
17
>>> x = np.array([1, 2, 3, 4])
>>> f(g(x))  # ([1, 2, 3, 4]*3) + 5
array([ 8, 11, 14, 17])

只要函数
g
的返回值可以用作
f
的输入,就可以像编写它一样执行:
f(g(输入))

什么是
x
输入?标量?阵列?数组形状和数据类型?输入的
x
是什么?标量?阵列?数组形状和数据类型?