说说如何使用 Python 类的属性
2019-03-31 本文已影响7人
deniro
![](https://img.haomeiwen.com/i3386108/3f9ee5b9d3bd25af.png)
假设有这样的一个 User 类:
class User():
'''账号信息'''
def __init__(self, name, pwd):
'''初始化'''
self.name = name
self.pwd = pwd
1 指定属性默认值
可以在方法 __init__()
内指定属性初始值。这里我们为 User 类,新增一个登陆次数属性并设置默认值,还定义了一个方法,用于打印登陆次数':
...
def __init__(self, name, pwd):
'''初始化'''
self.name = name
self.pwd = pwd
# 登陆次数
self.login_count = 0
def print_login_count(self):
'''打印登陆次数'''
print('登陆次数=' + str(self.login_count))
...
调用代码:
deniro_user = User('Deniro', '1')
deniro_user.print_login_count()
运行结果:
登陆次数=0
2 修改属性值
2.1 直接修改
最简单的方式就是通过实例直接访问修改属性的值,即使用句点表示法:
deniro_user.login_count = 10
deniro_user.print_login_count()
运行结果:
登陆次数=10
2.2 通过方法修改
有时候,修改类属性的逻辑很复杂,这时我们就可以定义一个修改方法,然后将值传递给这个方法, 然后在内部更新类属性的值。
首先在 User 类中定义一个 “更新登陆次数” 的方法:
def update_login_count(self, num):
'''更新登陆次数'''
self.login_count = num
然后在类实例中调用它:
deniro_user.update_login_count(10)
deniro_user.print_login_count()
运行结果:
登陆次数=10