我正在试着检查字典是否是空的,但它的行为不正常。它只是跳过它并在线显示,除了显示消息之外没有任何东西。知道为什么吗?
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()))
dict = {}
print(len(dict.keys()))
如果length为零,则表示dict为空
这里有三种方法可以检查dict是否为空。不过我更喜欢用第一种方式。另外两种方式都太罗嗦了。
test_dict = {}
if not test_dict:
print "Dict is Empty"
if not bool(test_dict):
print "Dict is Empty"
if len(test_dict) == 0:
print "Dict is Empty"
空字典在Python中的计算结果为false
:
>>> dct = {}
>>> bool(dct)
False
>>> not dct
True
>>>
因此,您的isempty
函数是不必要的。你所需要做的就是:
def onMessage(self, socket, message):
if not self.users:
socket.send("Nobody is online, please use REGISTER command" \
" in order to register into the server")
else:
socket.send("ONLINE " + ' ' .join(self.users.keys()))
问题内容: 我正在尝试检查字典是否为空,但是行为不正常。它只是跳过它并显示 ONLINE(在线) ,除了显示消息外没有任何内容。有什么想法吗? 问题答案: 空字典在Python中的计算结果为: 因此,您的功能是不必要的。您需要做的是:
我的代码看起来像 我的文件如下所示 当我运行程序时,我看到 我怎样才能修好它呢?
问题内容: 我在使用该功能时遇到了麻烦。 我只需要知道SQL查询是否返回零行。 我已经尝试过以下简单的语句: 类型是哪里。上面的代码似乎不起作用。无论是否为空,它将始终打印该消息。 我检查了SQL查询本身,当存在行时它正确返回了非空结果。 关于如何确定查询是否已返回0行的任何想法?我用谷歌搜索,找不到任何答案。 问题答案: ResultSet.getFetchSize()不返回结果数!从这里: 使
问题内容: 我正在使用JDBC连接到MySQL服务器(我认为没有连接池)。在连接网址中,我有 但是我的连接仍然超时。我什至检查了它的错误。但是,当我尝试使用连接时,出现以下异常。 我知道在Java 1.6中可以使用它来检查连接,但是我正在使用Java 1.5 有没有办法确保它不会超时?还是我必须升级到Java 1.6? 问题答案: 我有同样的问题,这绝对令人发疯。这是文档在MySQL网站上的内容(
问题内容: 月格式说明符似乎不起作用。 现在,根据手册,手册: %m =月,十进制数[01,12]。 那么,除了我试图理解我的django __filter查询为什么什么都不返回(输入的日期无效!)的原因之外,我还缺少什么呢?我已经尝试了,但无济于事。 事物,平台,架构等的版本: 问题答案: 您不能将它们与其他格式的代码混合使用,因为如果您在表中查看的话,所链接的%j是十进制数字[001,366]
问题内容: 即使将属性设置为,我仍然会插入重复的条目。 我设置了使用定期在。我没有用表 问题答案: 我没有使用JPA创建表 然后,您应该在语句中向表中添加唯一约束,例如,如果您使用的是MySQL: