-3
我想创建所有数据客户端发送到服务器的字典密钥。如何在不使用'='的情况下初始化字典,因为每次建立连接时,我都想将自己附加到列表[数据]中。问题初始化字典不使用'='
我得到一个错误,用下面的代码
factory.list = {}
.
.
.
def dataReceived(self,data):
self.factory.list[data].append(self)
我想创建所有数据客户端发送到服务器的字典密钥。如何在不使用'='的情况下初始化字典,因为每次建立连接时,我都想将自己附加到列表[数据]中。问题初始化字典不使用'='
我得到一个错误,用下面的代码
factory.list = {}
.
.
.
def dataReceived(self,data):
self.factory.list[data].append(self)
看来你要一个列表添加到字典,如果它不存在,就:
def dataReceived(self,data):
self.factory.list.setdefault(data, []).append(self)
这相当于:
def dataReceived(self,data):
if data not in self.factory.list:
self.factory.list[data] = []
self.factory.list[data].append(self)
使用factory.list = collections.defaultdict(名单)
我不确定我是否理解。你在寻找'self.factory.list.setdefault(data,[])。append(self)'? – freakish 2014-10-12 07:42:50
什么是错误? – 2014-10-12 08:01:03