[英]why this function returns None?
我正在处理客户端 - 服务器项目。 我正在开发一项功能,让用户可以选择向多个用户发送消息。
我有 2 个功能:
def broadcast(self, TalkingCurrentClient, message):
WhomMessageClient = self.ChoosingClientToSendMessage(message)
if WhomMessageClient is not None:
##################################
if WhomMessageClient is not isinstance(WhomMessageClient, list):
##################################
if TalkingCurrentClient == WhomMessageClient:
SerializedDataToBytes(WhomMessageClient, message)
if TalkingCurrentClient != WhomMessageClient:
SerializedDataToBytes(WhomMessageClient, message)
#############################################################
elif WhomMessageClient is isinstance(WhomMessageClient, list):
for ClientToSend in WhomMessageClient:
if ClientToSend != TalkingCurrentClient:
SerializedDataToBytes(ClientToSend, message)
else:
SerializedDataToBytes(ClientToSend, message)
#############################################################
else:
for client in self.clientsList:
if client != TalkingCurrentClient:
SerializedDataToBytes(client, message)
else:
SerializedDataToBytes(client, message)
这个 function 应该接受单个用户名或用户列表,这取决于用户的选择。 function 从第二个 function 调用 ChooseClientToSendMessage ChoosingClientToSendMessage(message)
但是,当我选择单个客户端(用户) WhomMessageClient
从 function 2 获取正确的客户端时,但是当我发送客户端列表时,我得到一个无值。
这是 function 2:
def ChoosingClientToSendMessage(self, message):
if message.recipient is not None and message.recipient != 'None':
if isinstance(message.recipient, list):
for ClientToAddToList in message.recipient:
ChoosingMultipleClientToSend = []
index = self.ConnectionsList.index(ClientToAddToList)
ChoosingMultipleClientToSend.append(self.clientsList[index])
if ChoosingMultipleClientToSend:
return ChoosingMultipleClientToSend
################################################################
else:
index = self.ConnectionsList.index(message.recipient)
ClientThatWhomMessage = self.clientsList[index]
print(ClientThatWhomMessage)
if ClientThatWhomMessage:
return ClientThatWhomMessage
return None
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.