在之前的博客中 , 定义的 Python 类 Student :
class Student:
name = None # 姓名
age = None # 年龄
def info(self):
print(f"姓名 : {self.name} , 年龄 : {self.age}")
如果要为其成员变量赋值 , 需要分别为 name 和 age 两个成员变量赋值 ,
s = Student()
s.name = "Tom"
s.age = 18
上述 2 个变量就写了 2 行代码 , 如果有十几个变量 , 那么就需要十几行代码 , 才能完成成员变量赋值的操作 ;
使用构造方法 , 可以在一行代码内 , 为多个变量同时赋值 , 这样就可以减少代码量 ;
构造方法简介 :
__init__()
方法 , 该方法名称 在 init
单词前后各有两个下划线 _
;
__init__()
构造方法 ;
__init__()
构造方法使用 ;
在下面的代码中 , Student 类包含了 __init__
构造方法 , 和 info
成员方法 ;
__init__()
构造方法中 , 接收两个参数 name 和 age , 分别赋值给 name 和 age 成员变量 ;
在 info()
方法中 , 将学生的 name 和 age 成员打印到控制台中 ;
代码示例 :
"""
面向对象 代码示例
"""
class Student:
name = None # 姓名
age = None # 年龄
def __init__(self, name, age):
self.name = name
self.age = age
def info(self):
print(f"姓名 : {self.name} , 年龄 : {self.age}")
s = Student("Tom", 18)
s.info()
执行结果 :
D:\001_Develop\022_Python\Python39\python.exe D:/002_Project/011_Python/HelloPython/Hello.py
姓名 : Tom , 年龄 : 18
Process finished with exit code 0
在上述代码示例中 , 定义了 name 和 age 成员变量 ,
class Student:
name = None # 姓名
age = None # 年龄
这两个成员变量是可以省略的 ;
构造函数还有一个作用 , 就是定义成员变量 , 并为其赋值 ;
def __init__(self, name, age):
self.name = name
self.age = age
下面的代码中 , 没有定义成员变量 , 直接在 __init__()
构造方法 中进行赋值 ;
代码示例 :
"""
面向对象 代码示例
"""
class Student:
def __init__(self, name, age):
self.name = name
self.age = age
def info(self):
print(f"姓名 : {self.name} , 年龄 : {self.age}")
s = Student("Tom", 18)
s.info()
执行结果 :
D:\001_Develop\022_Python\Python39\python.exe D:/002_Project/011_Python/HelloPython/Hello.py
姓名 : Tom , 年龄 : 18
Process finished with exit code 0
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有