马春杰杰博客
致力于深度学习经验分享!

[mcj]Python未绑定方法

未绑定方法”是Python中的一种调用方式,指的是当Python中使用类来调用类的方法时,由于此时调用方法的不是对象,而是类本身,相当于没有调用者。此时Python不会自动为方法的第一个参数self绑定参数值。因此程序必须显式地为第一个参数self传入方法的调用者。

比如:

此时直接运行会出现这种错误:TypeError: foo() missing 1 required positional argument: 'self'

也就是缺少指定的self参数。如上面所说,此时我们需要显式地指定调用者,即将Bird.foo()改为Bird.foo(b)即可。

这种用法等于b.foo()

或者我们也可以不指定调用者,而是直接传入参数给self,即:Bird.foo(“xxx”),由于在这个程序中我们并没与对self进行操作,因此这里xxx可以填任意数。当我们对self进行操作时,这里填的xxx就会传给self。如:

 

本文最后更新于2019年12月29日,已超过 1 年没有更新,如果文章内容或图片资源失效,请留言反馈,我们会及时处理,谢谢!

如果你对这篇文章有什么疑问或建议,欢迎下面留言提出,我看到会立刻回复!

打赏
未经允许不得转载:马春杰杰 » [mcj]Python未绑定方法
超级便宜的原生ChatGPT4.0

留个评论吧~ 抢沙发 评论前登陆可免验证码!

私密评论
  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址(选填,便于回访^_^)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

登录

忘记密码 ?

切换登录

注册