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

做网站公司介绍ppt网络推广方案设计

做网站公司介绍ppt,网络推广方案设计,静态网站怎么做,在线做图的网站1 表示是类方法, 类方法可以修改类变量, 实例方法不能修改类变量 类方法可以访问和修改类变量(也称为类属性)。这是实例方法做不到的,因为实例方法只能访问和修改实例变量(也称为实例属性) 1.1 例子 class MyClass:…

1 表示是类方法, 类方法可以修改类变量, 实例方法不能修改类变量

类方法可以访问和修改类变量(也称为类属性)。这是实例方法做不到的,因为实例方法只能访问和修改实例变量(也称为实例属性)

1.1 例子

class MyClass:my_var = 10  # 这是一个类变量@classmethoddef increment(cls):cls.my_var += 1  # 修改类变量的值print(MyClass.my_var)  # 输出 10
MyClass.increment()  # 调用类方法
print(MyClass.my_var)  # 输出 11

1.2 例子

class MyClass:# 类变量(类属性)class_var = 0def __init__(self):# 实例变量(实例属性)self.instance_var = 0# 实例方法def modify_instance_var(self, new_value):self.instance_var = new_value# 类方法@classmethoddef modify_class_var(cls, new_value):cls.class_var = new_value

在这个例子中,modify_instance_var是一个实例方法,可以修改实例变量instance_var。你需要创建一个MyClass的实例才能调用这个方法:

my_instance = MyClass()
my_instance.modify_instance_var(100)
print(my_instance.instance_var)  # 输出 100

另一方面,modify_class_var是一个类方法,可以修改类变量class_var。你可以直接通过MyClass类调用这个方法,无需创建实例:

MyClass.modify_class_var(200)
print(MyClass.class_var)  # 输出 200

请注意,尽管你可以通过实例访问类变量,但是如果你试图通过实例修改类变量,实际上会创建一个新的实例变量,而不会影响类变量。例如:

my_instance.class_var = 300
print(my_instance.class_var)  # 输出 300
print(MyClass.class_var)  # 输出 200,没有改变

在这个例子中,my_instance.class_var = 300并没有改变MyClass.class_var,而是在my_instance中创建了一个新的实例变量class_var。

当你运行my_instance.class_var = 300时,Python实际上在my_instance这个实例中创建了一个新的实例变量class_var (实例就是 实例化类, 类方法不用实例化可直接使用)

1.3 def __init__(self) 作用

 def __init__(self):# 实例变量(实例属性)self.instance_var = 0
'''
__init__是一个特殊的方法,被称为类的构造函数。
当你创建一个类的实例时,Python会自动调用这个方法。
这个方法通常用于设置实例变量(也称为实例属性)。在__init__方法中,
你可以通过self.variable_name = value的形式来设置实例变量。
这里的self是一个指向实例自身的引用,
variable_name是你想要设置的实例变量的名称,
value是你想要赋给实例变量的值
'''

1.4 为什么用cls 不用self? 只能用self 或cls 能不能自定义?

都可以,也可以自定义

在Python中,self和cls只是约定俗成的命名,
它们没有特殊的含义。self通常用作实例方法的第一个参数,
表示类的实例,而cls通常用作类方法的第一个参数,表示类本身。当我们使用@classmethod装饰器定义类方法时,
第一个参数是类,而不是实例。因此,我们通常将这个参数命名为cls,
以区别于实例方法的第一个参数self。虽然你可以选择任何你喜欢的名称作为参数名,
但是使用cls和self可以让其他开发者更容易理解你的代码。
因为这是一种广泛接受的命名约定,大多数Python开发者都会遵循这个约定。完全可以自定义这个参数的名称。
Python并没有强制你必须使用self或cls。
这两个词只是Python社区中的约定俗成的命名,用于提高代码的可读性和一致性。
class MyClass:@classmethoddef my_method(my_custom_name):print("This is a class method")MyClass.my_method()

不需要实例化就能调用的方法

class MathUtils:@classmethoddef add(cls, a, b):return a + bresult = MathUtils.add(1, 2)  # 直接通过类调用方法,无需创建实例
print(result)  # 输出 3

2.1 需要实例化使用

class MathUtils:def add(self, a, b):return a + b# 创建一个MathUtils的实例
math_utils = MathUtils()# 通过实例调用方法
result = math_utils.add(1, 2)
print(result)  # 输出 3

2.2 不用实例化

class MathUtils:@classmethoddef add(cls, a, b):return a + b# 直接通过类调用方法,无需创建实例
result = MathUtils.add(1, 2)
print(result)  # 输出 3

可以被子类覆盖

class Animal:@classmethoddef speak(cls):print("The animal makes a sound")class Dog(Animal):@classmethoddef speak(cls):print("The dog barks")Animal.speak()  # 输出 "The animal makes a sound"
Dog.speak()     # 输出 "The dog barks"

3.1 class Dog(Animal) 这种写法表示Dog 是Animal的子类

class Animal:@classmethoddef speak(cls):print("The animal makes a sound")class Dog(Animal):pass# 先实例化 在调用
dog = Dog()
dog.speak()# 直接通过Dog类调用speak方法 用类方法 修饰符
Dog.speak()

http://www.shuangfujiaoyu.com/news/32623.html

相关文章:

  • 提供免费网站建设百度快照推广效果怎样
  • 做网站用不用云服务器重庆网站制作公司
  • 室内设计师证报名入口官网seo是谁
  • 澳门赌网站怎么做代理seo有哪些网站
  • 网站开发方式有外包公司关键词seo
  • 有谁知道知乎网站是谁做的什么是网络推广营销
  • 网站 留言 以邮件形式广告推广平台
  • 网页和网站设计今日头条国际军事新闻
  • 做新闻微网站有哪些方面搜索引擎关键词排名
  • 深圳市网站建设公司设计信阳网站推广公司
  • 网站需要公安备案吗宿迁网站建设制作
  • 网站开发详细报价什么是百度竞价排名服务
  • 美丽乡村建设网站模板免费入驻的卖货平台有哪些
  • 遵义市网站制作网推项目平台
  • flash 可以做网站吗女教师遭网课入侵直播录屏曝光se
  • 免费做网站的app百度推广一年多少钱
  • 福州网红打卡景点seo外推软件
  • 自适应网站建设沈阳百度收录情况查询
  • 廊坊市建设银行网站seo具体怎么优化
  • 查看网站外链代码推广自己的网站
  • 网站建设新闻动态网站流量统计分析的维度包括
  • 网站建设服务合同纠纷淘宝搜索热词排名
  • 百度站长平台快速收录seo的内容主要有哪些方面
  • 天津建设厅网站首页高端网站建设案例
  • wordpress 汽车租赁合肥seo优化公司
  • 现在房子装修流行什么风格seo搜索引擎优化服务
  • 商丘做网站公司淘宝推广平台有哪些
  • 盐城市住房城乡建设网站如何制作自己的网页
  • seo知识总结北京seo外包 靠谱
  • 宁波网站搜索优化东莞网站推广营销网站设计