我有一段代码在下一行给出了错误
重置购物车功能如下所示。 有人可以告诉我如何解决这个问题吗?
[pre_s, s, pre_a, a, x, x_dot, theta, theta_dot] = reset_cart(beta) # reset the cart pole to initial state
类型错误: 'NoneType'对象不可迭代
[pre_s, s, pre_a, a, x, x_dot, theta, theta_dot] = reset_cart(beta)
def reset_cart(beta):
pre_s=1
s=1
pre_a=-1
a=-1
x = 0
x_dot = 0
theta = 0
theta_dot = 0.01
答案 0 :(得分:0)
您错过了reset_cart
功能的关键部分:返回。
现在,当您的reset_cart
函数完成时,它刚设置的所有变量都会消失,因为它们从未在函数外部分配值。从函数中获取值到使用它们的任何其他位置的主要方法是使用return语句返回它们。
在这种情况下,您尝试将这8个元素设置为函数中给出的值,因此返回一个包含这8个元素的列表:
def reset_cart(beta):
pre_s=1
s=1
pre_a=-1 #the agent is taking no action
a=-1
x = 0
x_dot = 0
theta = 0
theta_dot = 0.01
return [pre_s, s, pre_a, a, x, x_dot, theta, theta_dot]
有关返回变量和变量范围的更多信息,请参阅: