Python: Checking if a 'Dictionary' is empty doesn't seem to work
Empty dictionaries evaluate to False
in Python:
>>> dct = {}>>> bool(dct)False>>> not dctTrue>>>
Thus, your isEmpty
function is unnecessary. All you need to do is:
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()))
Here are three ways you can check if dict is empty. I prefer using the first way only though. The other two ways are way too wordy.
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"