|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
在第一个模块里我只创建了一个Admin的实例,但是却执行了show_privileges方法,这是为什么?
这是那个模块
- from user_information import User,Admin
- hy = Admin('h','y',12,'male')
复制代码
这是该模块的输出
- The user name is HuangYu.
- The user age is 11.
- The user sex is male.
- Hello,Huang Yu !
- Administrators have the right to can add post,can delete post,can ban user.
复制代码
这是被导入的方法所在模块
- class User():
- def __init__(self,first_name,last_name,age,sex):
- self.first_name = first_name
- self.last_name = last_name
- self.age = age
- self.sex = sex
-
- def describe_user(self):
- print("The user name is " + self.first_name.title() + self.last_name.title() + ".")
- print("The user age is " + str(self.age) + ".")
- print("The user sex is " + self.sex + ".")
-
- def greet_user(self):
- print("Hello," + self.first_name.title() + " " + self.last_name.title() + " !")
-
- class Admin(User):
- def __init__(self,first_name,last_name,age,sex):
-
- super().__init__(first_name,last_name,age,sex)
- self.privilege = Privileges()
- class Privileges():
- def __init__(self,privileges=['can add post','can delete post','can ban user']):
- self.privileges = privileges
-
- def show_privileges(self):
- print('Administrators have the right to',','.join(self.privileges) + '.')
- u = Admin('huang','yu',11,'male')
- u.describe_user()
- u.greet_user()
- u.privilege.show_privileges()
复制代码
这是输出
- The user name is HuangYu.
- The user age is 11.
- The user sex is male.
- Hello,Huang Yu !
- Administrators have the right to can add post,can delete post,can ban user.
复制代码
- if __name__ == '__main__':
- u = Admin('huang', 'yu', 11, 'male')
- u.describe_user()
- u.greet_user()
- u.privilege.show_privileges()
复制代码
|
|