【报错】missing required positional argument: self

原因:你在定义函数的时候加了self,但是你在实例化的时候没加

def rl(self):
rw= rl()

这样就接受不到结果了
【解决方法】
把self点后面的变量全部卸载rl函数里,不再进行外部调用,这样也就不用self了
【报错】missing required positional argument: self_第1张图片

现在让我们简单了解一下Python中self的基础信息:

self,表示创建的类实例本身,方法内部,就可以把各种属性绑定到self,因为self就指向创建的实例本身。在创建实例的时候,就不能传入空的参数了,必须传入与方法匹配的参数,但self不需要传,Python解释器会自己把实例变量传进去。***

    def build_q_table(self,n_states, actions):
        table = pd.DataFrame(
            np.zeros((n_states, len(actions))),     # q_table initial values
            columns=actions,    # actions's name
        )
        
        return table# print(table)    # show table

所以定义的时候最好也带上self,不然会产生传参错误

传递参数的问题: __init__() takes 2 positional arguments but 3 were given

你可能感兴趣的:(python)