gpt4 book ai didi

python - 扭曲的框架需要一些澄清

转载 作者:行者123 更新时间:2023-12-01 01:03:04 27 4
gpt4 key购买 nike

当我在关于“编写服务器”的扭曲框架教程中查看代码时,我遇到了以下几行代码,这让我感到困惑。

class Chat(LineReceiver):
def __init__(self,users):
self.users = users

class ChatFactory(Factory):

def __init__(self):
self.users = {} # maps user names to Chat instances
def buildProtocol(self, addr):
return Chat(self.users)

任何人请解释一下,当 Chat 类中的 self.users 更新时,ChatFactory 类中的 self.users 是如何更新的。

最佳答案

在:

f = ChatFactory()
p = f.buildProtocol(some_address)

表达式f.usersp.users引用同一个字典。这是因为 ChatFactory.buildProtocolself.users 传递给 Chat 初始值设定项,并且 Chat 初始值设定项保存对它。

由于它们是同一字典,因此不会导致一个字典在另一个字典更新时更新,因为“一个”和“另一个”实际上是同一件事。

关于python - 扭曲的框架需要一些澄清,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55627482/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com