from random import randint
class Student():
"""学生类"""
def __init__(self, name, age):
self.name = name
self.age = age
# 打招呼
def sayHello(self):
print("Hello,my name is " + self.name.title()
+ ". I'm " + str(self.age) + " years old.")
print("======")
# 类创建实例
zhangsan = Student('zhangsan', 18)
# 访问属性
print(zhangsan.name)
# 调用方法
zhangsan.sayHello()
# ★继承
class Person():
'''人类'''
def __init__(self, name, gender):
self.name = name
self.gender = gender
def say(self):
print("my name is " + self.name + ",my gender is "
+ self.gender + ",i am a person.")
class Teacher(Person):
'''教师类'''
def __init__(self, name, gender, title):
Person.__init__(self, name, gender)
# 职称
self.title = title
def say(self):
print("my name is " + self.name + ",my gender is "
+ self.gender + ",my title is " + self.title
+ ",i am a teacher.")
xiaoming = Person('小明', '男')
xiaoming.say()
xiaohong = Teacher('小红', '女', '高级教师')
xiaohong.say()
print(type(xiaoming) == Person) # True
print(type(xiaohong) == Person) # False
print(type(xiaohong) == Teacher) # True
print(isinstance(xiaohong, Person)) # True
# ★type()不会认为子类是一种父类类型
# ★isinstance()会认为子类是一种父类类型
# 练习
# 创建一个骰子类,并投掷10次
class Dice:
"""骰子类"""
def __init__(self):
self.sides = 6
def roll_dice(self):
print(randint(1, self.sides))
s6dice = Dice()
for v in range(1, 11):
s6dice.roll_dice()
print('======')
s10dice = Dice()
s10dice.sides = 10
for v in range(1, 11):
s10dice.roll_dice()
05-22