《流畅的 Python》第 9 章笔记

《流畅的 Python》第 9 章笔记,第1张

概述转:《流畅的Python》第9章笔记有一个点卡住了。就是关于这个类的类方法和静态方法。classDemo:@classmethoddefklassmeth(*args):print(args)returnargs@classmethoddeftestclsmeth(cls):print(cls)@staticmetho

转:

《流畅的 Python》第 9 章笔记

有一个点卡住了。就是关于这个类的 类方法 和 静态方法。

class Demo:    @classmethod    def klassmeth(*args):        print(args)        return args    @classmethod    def testclsmeth(cls):        print(cls)    @staticmethod    def statmeth(*args):        print(args)        return argsif __name__ == '__main__':    Demo.klassmeth()    Demo.klassmeth('nihao')    Demo.testclsmeth()    Demo.statmeth()    Demo.statmeth('nihao')# output"""(,)(, 'nihao')()('nihao',)"""

① 书中原话是这样:

按照约定,类方法的第一个参数名为 cls(但是 Python 不介意具体怎么命名)。

而在 PyCharm 中,这个参数的命名只能为 cls

② 这里的参数使用了 *args,即采用了包裹位置传递的方法。这样可以验证不管怎样调用类方法,它的第一个参数始终是它所属的类。我们可以通过上面的 main 方法的输出来验证。

转:

《流畅的 Python》第 9 章笔记

总结

以上是内存溢出为你收集整理的《流畅的 Python》第 9 章笔记全部内容,希望文章能够帮你解决《流畅的 Python》第 9 章笔记所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1187091.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存