当前位置:   article > 正文

Python中类的初始化形式def __init__(self)和def __init__(self,args)_def init (self)

def init (self)

文章目录
一、形式一:def __init__(self)
二、形式二:def __init__(self,args)
一、形式一:def init(self)
这种形式在__init__方法中,只有一个self,指的是实例的本身。它允许定义一个空的类对象,当新数据来时,可以直接添加。实例化时,需要实例化之后,再进行赋值。

# -*- coding:utf-8 -*-
class Student(object):
    def __init__(self):
        self.name = None
        self.grade = None

    def print_grade(self):
        print(f"{self.name}'s grade is {self.grade}")

s1 = Student()  # 创建对象s1
s1.name = "Tom"
s1.grade = 8

s2 = Student()  # 创建对象s2
s2.name = "Jerry"
s2.grade = 7

s1.print_grade()
s2.print_grade()
在对类Student进行实例化时,因为__init__方法只有一个参数self,因此不需要传入其他参数。当需要打印print_grade方法的结果时,只需要对name和grade进行赋值即可。

二、形式二:def init(self,args)
这种形式在__init__方法中,除了有参数self,还有其他的参数args。
这种形式在定义方法时,属性值不允许为空。实例化时,直接传入参数。

# -*- coding:utf-8 -*-
class Student(object):
    def __init__(self, name, grade):
        self.name = name
        self.grade = grade

    def print_grade(self):
        print(f"{self.name}'s grade is {self.grade}")


s1 = Student("Tom", 8)   # 创建对象s1
s2 = Student("Jerry", 7)  # 创建对象s2

s1.print_grade()
s2.print_grade()
在对类Student进行实例化时,因为__init__方法有参数self,name和grade,因此在实例化对象时一定要传入name和grade参数。当需要打印print_grade方法的结果时,直接调用即可。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/761934
推荐阅读
  

闽ICP备14008679号