2015-11-20 79 views
8

以下产生NameError: name 'Client' is not defined。我该如何解决它?类型提示:解决循环依赖

class Server(): 
    def register_client(self, client: Client) 
     pass 


class Client(): 
    def __init__(self, server: Server): 
     server.register_client(self) 
+0

写这不只是实现服务器,扩展与客户三等功。 –

回答

12

您可以通过使用字符串名称为尚未定义的Client类使用forward reference

class Server(): 
    def register_client(self, client: 'Client') 
     pass