练习1: 类和修饰器
## 单下划线开始的成员变量叫做保护变量,只有类对象和子类对象自己能够访问到这些变量;
## 双下划线开始为私有成员,只有类对象自己能访问,连子类对象也不能访问这个数据;
class Person(object):
def __init__(self,name,age):
self._name=name
self._age=age
@property
def name(self):
return self._name
@property
def age(self):
return self._age
@age.setter
def age(self,age):
self._age=age
def play(self):
if self._age<16:
print('%s正在玩王者荣耀.' % self._name)
else:
print('%s正在云顶之弈.' % self._name)
def main():
person=Person('王宝强',32)
person.play()
person.age=15
person.play()
#person.name='吴京' ## 未使用修改器,不能访问私有保护变量;
if __name__=='__main__':
main()
练习2:定义一个类描述数字时钟:
from time import sleep
import sys
class clock():
def __init__(self,second,minute,hour):
self.second=0
self.minute=0
self.hour=0
def run(self):
self.second+=1
if self.second==60:
self.second=0
self.minute+=1
if self.minute==60:
self.minute=0
self.hour+=1
if self.hour==24:
self.hour=0
def show(self):
return '%02d:%02d:%02d' % (self.hour,self.minute,self.second)
def main():
time_clock=clock(23,59,58)
while True:
##实现原地刷新
print('\r'+ time_clock.show(),end='')
sys.stdout.flush()
sleep(1)
time_clock.run()
if __name__=='__main__':
main()
网友评论