当前位置: 首页 > news >正文

做商城购物网站沧州网站建设

做商城购物网站,沧州网站建设,阿克苏地区住房和城乡建设局网站,网店建设管理系统1. 类属性(类变量)和实例属性(实例变量) 在python中,类中的属性就是定义在类中的变量,简称成员变量;类中的行为就是定义在类中的方法,简称成员方法。成员变量又可分为类变量和实例变量,或者分为类属性和实例属性。成员…

1. 类属性(类变量)和实例属性(实例变量)

  在python中,类中的属性就是定义在类中的变量,简称成员变量;类中的行为就是定义在类中的方法,简称成员方法。成员变量又可分为类变量和实例变量,或者分为类属性和实例属性。成员方法又分为类方法和实例方法。类属性就是这个类所拥有的属性(变量),类属性被该类的所有实例对象所共有。对于公有的类属性,在类外可以通过类名或实例对象来访问。实例属性是该类的实例对象所拥有的,类对象无法拥有(通过类名无法访问实例属性)。
  实例属性是定义在构造方法__init__内部,而类属性是定义在类的内部,构造方法__init__的外部。总而言之,类属性不属于任何一个实例对象,而是属于类本身。但所有的实例对象可以共享同一个类属性。当你修改类属性时,在所有的实例对象中都能看到类属性的变化。实例属性在类的每一个实例对象中独立存在,每个实例对象都有自己的实例属性,互不影响。

class Student:school_name = "AAAAAA"  # 公有类属性__shcool_add = "XXXXXX" # 私有类属性def __init__(self, name: str, age: int, id: str) -> None:# stu_name、stu_age、stu_id都是实例属性self.stu_name = nameself.stu_age = ageself.stu_id = idstu = Student("zs",21,"0001")  # 实例对象stu
# 访问类属性
print(Student.school_name) # 通过类名来访问公有类属性,输出:AAAAAA
print(stu.school_name) # 通过实例对象来访问公有类属性,输出:AAAAAA
# print(Student.__shcool_add) # 报错,因为在类外不能通过类名来访问私有类属性
# print(stu.__shcool_add) # 报错,因为在类外不能通过实例对象来访问私有类属性# # 访问实例属性
print(stu.stu_name)  # 通过实例对象来访问实例属性,输出:zs
# print(Student.stu_name)  # 报错,实例属性是实例对象特有的,类对象无法访问

2. 类方法和实例方法

  类方法是这个类所拥有的方法,需要用修饰器@classmethod来标识其为类方法。对于类方法,第一个参数默认为cls(当然也可以用其他名称的变量作为其第一个参数,但是大部分人都习惯以cls作为第一个参数的名字,就最好用cls了),cls表示类本身。能够通过实例对象和类对象(类名)去访问。
  实例方法不需要任何修饰器,第一个参数默认为self,表示实例对象本身。

class Student:school_name = "AAAAAA"  # 公有类属性__shcool_add = "XXXXXX" # 私有类属性def __init__(self, name: str, age: int, id: str) -> None:# stu_name、stu_age、stu_id都是实例属性self.stu_name = nameself.stu_age = ageself.stu_id = id# 类方法@classmethoddef get_school_info(cls) -> str:return f"school_name = {cls.school_name}, school_add = {cls.__shcool_add}"stu = Student("zs",21,"0001")
print(Student.get_school_info())  # 通过类名访问类方法
print(stu.get_school_info())  # 通过实例对象访问类方法输出:
school_name = AAAAAA, school_add = XXXXXX
school_name = AAAAAA, school_add = XXXXXX

3. 静态方法

  静态方法需要使用修饰器@staticmethod来进行修饰,静态方法不需要额外定义参数。因此在静态方法中引用类属性,必须通过类对象(类名)来调用。

class Student:school_name = "AAAAAA"  # 公有类属性__shcool_add = "XXXXXX" # 私有类属性# 静态方法@staticmethoddef get_school_info() -> str:return f"school_name = {Student.school_name}, school_add = {Student.__shcool_add}"stu = Student()
print(Student.get_school_info())  # 通过类名访问静态方法
print(stu.get_school_info())  # 通过实例对象访问静态方法输出:
school_name = AAAAAA, school_add = XXXXXX
school_name = AAAAAA, school_add = XXXXXX

参考文章:
Python中的类属性、实例属性与类方法、静态方法
Python 的类属性

http://www.ds6.com.cn/news/19411.html

相关文章:

  • 打开百度网站建设打开搜索引擎
  • 银川网站建设怎么样seo网站快速排名外包
  • 高密哪里做网站好一份完整的活动策划方案
  • 国际贸易网登录沈阳专业网站seo推广
  • 网站建设需求文档模板下载电商网站设计方案
  • 房屋中介做网站的书籍北京seo顾问服务
  • 提示危险网站在百度做广告多少钱
  • 企业做网站要注意哪些营销活动推广策划
  • html5 微信网站 源码网络培训平台
  • 手机网站工具软件开发外包平台
  • 清华紫光是可以做网站的吗优化seo
  • 广西省建设厅建委网站seo标题优化关键词
  • 网站制作 企业网站建设哪家好线上推广员是做什么的
  • 做网站有一个火箭回顶部新闻发稿
  • 手机网站设计方案百度公司在哪里
  • 买汽车最好的网站建设真正免费的网站建站平台有哪些
  • 免费建网站视频教程关键词林俊杰mp3在线听
  • 南阳做网站费用如何推广普通话的建议6条
  • 沈阳网站建设报价有链接的网站
  • wix做网站的建议怎么创建域名
  • 天津做网站的公司怎么样淘宝数据查询
  • 福州网站怎么做的网站怎么做推广
  • 如皋网站建设关键字排名软件官网
  • 在源码之家下载的网站模板可以作为自己的网站吗湖南网站网络推广哪家奿
  • 深圳最新疫情出行政策湖南seo博客seo交流
  • 廊坊开发网站公司seo关键词优化技巧
  • 长沙 学校网站建设百度seo官方网站
  • 浙江政府网站大建设方案聊城网站推广公司
  • 做仿网站的书nba排名西部和东部
  • 怎样安装微信小程序东莞市网站seo内容优化