【发布时间】:2023-04-06 13:36:02
【问题描述】:
我正在尝试检查字典是否为空,但它的行为不正常。它只是跳过它并显示 ONLINE 除了显示消息之外没有任何内容。任何想法为什么?
def isEmpty(self, dictionary):
for element in dictionary:
if element:
return True
return False
def onMessage(self, socket, message):
if self.isEmpty(self.users) == False:
socket.send("Nobody is online, please use REGISTER command" \
" in order to register into the server")
else:
socket.send("ONLINE " + ' ' .join(self.users.keys()))
【问题讨论】:
-
要检查
self.users
是否为非空,只需执行if self.users
。 -
你的
isEmpty
实际上返回True
如果从字典产生的第一个键是truey,否则返回False
。如果字典为空,则返回None
,它不是== False
。 -
你的 if 语句是倒退的。
标签:
python
dictionary
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python:检查“字典”是否为空似乎不起作用 - Python技术站