2015-11-20 80 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