有勇气的牛排博客

python 实例方法、静态方法@staticmethod、类方法@classmethod

有勇气的牛排 540 Python 2022-12-24 14:50:37

哈喽,大家好,我是有勇气的牛排(全网同名)🐮🐮🐮

有问题的小伙伴欢迎在文末评论,点赞、收藏是对我最大的支持!!!。

文章目录

前言

在 Python类中有3个常用方法:

  • 实例方法(self)
  • 静态方法:@staticmethod
  • 类方法:@classmethod

1、实例方法(self)

实例方法中def所定义的内容,我们称之为方法,而不是函数,默认会在方法中添加self,self是类本身的实例对象。

2、静态方法(staticmethod)

定义:无法访问类或对象的数据,可以用作逻辑处理,即在类里面实现一个函数,并不需要去加self。

3 类方法

  • 可以设置修改类属性,也可以实例化对象。
  • cls 代表外层类本身,可以实例化,也可以直接调用静态方法、类方法、静态变量

4 实战

class User: def __init__(self): self.id = 1 self.name = "有勇气的牛排" """ 实例方法 """ def get_user_info(self): return f"id: {self.id} 昵称:{self.name}" """ @classmethod: 类方法 可以设置修改类属性;也可以实例化对象 cls 代表外层类本身,可以实例化,也可以直接调用静态方法、类方法、静态变量 """ @classmethod def get_hobby(cls, hobby): return f"你的爱好是:{hobby}" """ @staticmethod: 静态方法 无法访问类或对象的数据,可以用作逻辑处理 """ @staticmethod def get_url(url): return url get_user_info = User().get_user_info() print(get_user_info) get_hobby = User.get_hobby("看书") print(get_hobby) get_url = User.get_url("www.couragesteak.com") print(get_url)

image.png


留言

专栏
文章
加入群聊