问题遇到的现象和发生背景
两个调用的结果不一样 但是感觉应该是一样的
问题相关代码,请勿粘贴截图
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
self.login_attempts = 0
def describe_user(self):
print(f"{self.first_name}{self.last_name},{self.sex},{self.age}years old.")
def hello_1(self):
print(f"hello , {self.first_name}{self.last_name}")
def increment_login_attempts(self):
self.login_attempts += 2
def resst_login_attempts(self):
self.login_attempts = 0
class Privileges():
def init(self):
self.privileges = ['can add post', 'can delete post', 'can ban user']
def privi(self):
print(self.privileges)
class Admin(User):
def init(self, first_name, last_name, age, sex):
super().init(first_name, last_name, age, sex)
# self.privileges = ['can add post' ,'can delete post','can ban user']
self.pri = Privileges()
def show_adminqs(self):
print(self.pri)
a = Admin('xiao', 'pangzi', 11, 'hulu')
a.pri.privi()
a.show_adminqs()
运行结果及报错内容
['can add post', 'can delete post', 'can ban user']
<__main__.Privileges object at 0x000001F3C09F7BB0>
最后两个调用感觉应该是一样的结果
我的解答思路和尝试过的方法
a.pri.privi()
a.show_adminqs()()
改成上面这样的话
运行结果就变成下面这样
Traceback (most recent call last):
File "E:\pythonProject\用户.py", line 36, in
a.show_adminqs()()
TypeError: 'NoneType' object is not callable
['can add post', 'can delete post', 'can ban user']
<__main__.Privileges object at 0x000001C6458B7B%B0>
我想要达到的结果
想知道为什么会这样