将两个变量的函数编写为一个变量中的函数
Writing a function of two variables as a function in one variable
假设我有以下 2 个变量的函数 -
def banana(x,y):
return exp(((-x**2/200))-0.5*(y+0.05*(x**2) - 100*0.05)**2)
我想把它写成 -
def banana(x):
这里的x是两个变量的向量;如果可以的话?
感谢您的帮助!
可能类似于
def banana(x):
return exp(((-x[0]**2/200))-0.5*(x[1]+0.05*(x[0]**2) - 100*0.05)**2)
是的,这是可能的:
def _banana(x):
return banana(*x)
你可以用列表来写
def banana(x):
return exp(((-x[0]**2/200))-0.5*(x[1]+0.05*(x[0]**2) - 100*0.05)**2)
你可以这样写:
def banana(vector):
x, y = vector
return exp(((-x**2/200))-0.5*(y+0.05*(x**2) - 100*0.05)**2)
解压函数开头的参数:
def banana(args):
x, y = args
return exp(((-x**2/200))-0.5*(y+0.05*(x**2) - 100*0.05)**2)
或者直接在定义行中:
def banana((x, y)):
return exp(((-x**2/200))-0.5*(y+0.05*(x**2) - 100*0.05)**2)
是的,当然有可能。
您可以使用列表或元组。把你的两个变量放到一个列表或元组中
x = [5, 7] # A list
x = (5, 7) # A tuple
你的功能应该是这样的:
def banana(x):
x, y = x # Unpacking
return exp(((-x**2/200))-0.5*(y+0.05*(x**2) - 100*0.05)**2)
查看更多
假设我有以下 2 个变量的函数 -
def banana(x,y):
return exp(((-x**2/200))-0.5*(y+0.05*(x**2) - 100*0.05)**2)
我想把它写成 -
def banana(x):
这里的x是两个变量的向量;如果可以的话?
感谢您的帮助!
可能类似于
def banana(x):
return exp(((-x[0]**2/200))-0.5*(x[1]+0.05*(x[0]**2) - 100*0.05)**2)
是的,这是可能的:
def _banana(x):
return banana(*x)
你可以用列表来写
def banana(x):
return exp(((-x[0]**2/200))-0.5*(x[1]+0.05*(x[0]**2) - 100*0.05)**2)
你可以这样写:
def banana(vector):
x, y = vector
return exp(((-x**2/200))-0.5*(y+0.05*(x**2) - 100*0.05)**2)
解压函数开头的参数:
def banana(args):
x, y = args
return exp(((-x**2/200))-0.5*(y+0.05*(x**2) - 100*0.05)**2)
或者直接在定义行中:
def banana((x, y)):
return exp(((-x**2/200))-0.5*(y+0.05*(x**2) - 100*0.05)**2)
是的,当然有可能。 您可以使用列表或元组。把你的两个变量放到一个列表或元组中
x = [5, 7] # A list
x = (5, 7) # A tuple
你的功能应该是这样的:
def banana(x):
x, y = x # Unpacking
return exp(((-x**2/200))-0.5*(y+0.05*(x**2) - 100*0.05)**2)
查看更多