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

网站开发用到什么技术各大搜索引擎网站提交入口

网站开发用到什么技术,各大搜索引擎网站提交入口,seo自学网站,wordpress实现论坛功能29.从入门到精通#xff1a;Python3 面向对象继承 多继承 方法重写 类属性与方法 继承多继承方法重写类属性与方法 继承 在面向对象编程中#xff0c;继承是指通过继承现有类的属性和方法来创建新类的过程。新类称为子类#xff08;或派生类#xff09;#xff0c;现有类… 29.从入门到精通Python3 面向对象继承 多继承 方法重写 类属性与方法 继承多继承方法重写类属性与方法 继承 在面向对象编程中继承是指通过继承现有类的属性和方法来创建新类的过程。新类称为子类或派生类现有类称为父类或基类。 继承可以提高代码的重用性和可扩展性减少代码的重复。子类可以继承父类的属性和方法还可以添加自己的属性和方法或者重写父类的方法。 在 Python 中继承可以通过在类定义中指定父类来实现。例如 class Person:def __init__(self, name, age):self.name nameself.age agedef span classhljs-title function_say_hello/span(self):span classhljs-title function_print/span(span classhljs-stringHello, my name is {} and I am {} years old./span.span classhljs-title function_format/span(self.span classhljs-propertyname/span, self.span classhljs-propertyage/span))class Student(Person):def init(self, name, age, student_id):Person.init(self, name, age)self.student_id student_id def span classhljs-title function_say_hello/span(self):span classhljs-title class_Person/span.span classhljs-title function_say_hello/span(self)span classhljs-title function_print/span(span classhljs-stringMy student ID is {}./span.span classhljs-title function_format/span(self.span classhljs-propertystudent_id/span))在这个示例中我们定义了一个名为 Person 的父类和一个名为 Student 的子类。子类 Student 继承了父类 Person的属性和方法并添加了自己的属性和方法。 在子类中我们可以使用 super() 函数来调用父类的方法。例如在 Student 类的 init() 方法中我们调用了父类 Person 的 init() 方法来初始化对象的属性。 我们还重写了父类 Person 的 say_hello() 方法并在子类 Student 的 say_hello() 方法中调用了父类的say_hello() 方法并添加了自己的输出。 下面是一个使用 Student 类的示例 student Student(John, 20, 123456) student.say_hello()在这个示例中我们创建了一个名为 student 的 Student 对象并调用了对象的 say_hello() 方法。由于Student 类继承了 Person 类的 say_hello() 方法因此在调用子类的 say_hello() 方法时父类的say_hello() 方法也会被调用。 希望这可以帮助您了解在 Python 中如何实现继承 多继承 多继承是指一个类可以同时继承多个父类的特性。在 Python 中多继承可以通过在类定义时同时指定多个父类来实现。例如 class A:def method_a(self):print(This is method A.)class B:def method_b(self):print(This is method B.)class C(A, B):def method_c(self):print(This is method C.)c C() c.method_a() # 输出This is method A. c.method_b() # 输出This is method B. c.method_c() # 输出This is method C.在上面的例子中我们定义了三个类 A、B 和 C。类 A 和 B 分别定义了一个方法 method_a 和 method_b类 C继承了类 A 和类 B并且定义了一个方法 method_c。通过实例化类 C我们可以调用所有三个方法 需要注意的是多继承可能会导致方法重名的问题。如果多个父类中都定义了同名的方法那么在子类中调用该方法时Python会按照一定的顺序搜索父类直到找到第一个定义该方法的父类为止。 这个搜索顺序称为方法解析顺序Method Resolution Order简称 MRO可以通过类的 mro 属性来查看。例如 class A:def method(self):print(This is method A.)class B:def method(self):print(This is method B.)class C(A, B):passclass D(B, A):passprint(C.__mro__) # 输出(class __main__.C, class __main__.A, class __main__.B, class object) print(D.__mro__) # 输出(class __main__.D, class __main__.B, class __main__.A, class object)在上面的例子中我们定义了四个类 A、B、C 和 D。类 A 和 B 分别定义了一个方法 method类 C 继承了类 A 和类 B类D 继承了类 B 和类 A。通过查看类的 mro 属性我们可以看到方法解析顺序是怎样的。在类 C 中调用 method 方法时由于 A 在 B 前面所以会优先调用 A 中的 method 方法。在类 D 中调用 method 方法时由于 B 在 A 前面所以会优先调用 B 中的 method 方法。 方法重写 在面向对象编程中方法重写是指在子类中重新定义一个与父类中同名的方法。通过方法重写子类可以改变继承自父类的方法的行为从而实现自己的逻辑。方法重写也称为方法覆盖或方法复写。 在 Python 中方法重写可以通过在子类中定义一个与父类中同名的方法来实现。例如 class Person:def __init__(self, name, age):self.name nameself.age agedef say_hello(self):print(Hello, my name is {} and I am {} years old..format(self.name, self.age))class Student(Person):def say_hello(self):print(Hello, my name is {} and I am a student..format(self.name))类属性与方法 类属性和类方法是指属于整个类而不是类的实例的属性和方法。类属性和类方法可以通过类名直接访问也可以通过类的实例访问。以下是一个示例 class Person:# 类属性species Homo sapiensspan classhljs-comment# 实例属性/span def span classhljs-title function___init__/span(span classhljs-paramsself, name, age/span):self.name nameself.age agespan classhljs-comment# 实例方法/span def span classhljs-title function_say_hello/span(span classhljs-paramsself/span):span classhljs-built_inprint/span(span classhljs-stringfHello, my name is span classhljs-subst{self.name}/span and I am span classhljs-subst{self.age}/span years old./span)span classhljs-comment# 类方法/span classmethod def span classhljs-title function_get_species/span(span classhljs-paramscls/span):span classhljs-built_inprint/span(span classhljs-stringfThis is a {cls.species}./span)person Person(Alice, 25) person.say_hello() # 输出Hello, my name is Alice and I am 25 years old. Person.get_species() # 输出This is a Homo sapiens.在上面的示例中我们定义了一个 Person 类包含了一个类属性 species、一个实例属性 name 和 age、一个实例方法 say_hello 和一个类方法 get_species。类属性和类方法都是通过在方法或属性前面加上 classmethod装饰器来定义的。类属性是属于整个类的属性可以通过类名直接访问。在上面的示例中我们通过 Person.species 来访问类属性 species。类方法是属于整个类的方法可以通过类名直接调用。在上面的示例中我们通过 Person.get_species() 来调用类方法 get_species。需要注意的是类方法的第一个参数通常是 cls表示类本身。
http://www.dnsts.com.cn/news/113746.html

相关文章:

  • 做校园二手交易网站的目的app推广文案
  • 10月哪个网站做电影票活动网站不能风格
  • 做英文网站建设网站搭建 成都
  • 中国移动门户网站考试类网站如何做
  • 海珠区建设和水务局网站定制网站建设报价单
  • 网站建设课程大纲动漫设计师资格证
  • 长沙市网站推广多少钱两岸已进入准战争状态
  • mysql 网站开发 问好wordpress 页面 模板
  • 有没有做生鲜配送的网站网站建设的需求分析
  • 本地的南通网站建设ps模板素材网站
  • 做网站用注册公司吗网站设计 色彩
  • 南昌网站建设方案详细版南通移动网站建设
  • 个人网站开发可行性报告wordpress新增文章小工具
  • 网站自适应源码网络推广专员要求
  • 科技部网站建设合同lamp和wordpress
  • 名表网站文档上传网站
  • 河南专业网站建设衡水医院网站建设
  • 微信怎样建网站互联网 网站建设
  • 自己怎么建设网站首页官方网站有哪些
  • 广州市网站建设制作费用申请公司邮箱
  • 服务专业的网络建站公司四川省建设工程信息网官网首页
  • 邢台专业做wap网站站长之家whois
  • 涟水做网站公众号菜单栏页面模板
  • 响应式网站好处合肥专业的房产网站建设
  • 图文制作网站长尾关键词优化
  • 网站改版引导更换域名wordpress
  • 网站建设外包公司容易被客户投诉吗做游戏代练的网站
  • 亿企邦网站建设qq推广官网
  • 至少保存十个以上域名网站国外网站查询
  • 蚌埠企业网站建设套餐vue seo 优化方案