在下面的代码中,User
类需要访问类get_user
实例中 的函数WebService
,因为它包含与 Web 服务器 (last.fm) 进行身份验证所需的其他函数。实际代码在这里。
class WebService:
def __init__(self, key):
self.apikey = key
def get_user(self, name):
pass # Omitted
class User:
def __init__(self, name, webservice):
self.name = name
self.ws = webservice
def fill_profile(self):
data = self.ws.GetUser(self.name)
# Omitted
问题是需要在每个“用户”内部保存一个引用。还有另一种方法吗?或者只是我把事情复杂化了,这就是它在现实世界中的实际运作方式?