J'essaie de vérifier si un dictionnaire est vide mais il ne se comporte pas correctement. Il saute simplement et affiche EN LIGNE sans rien, sauf d'afficher le message. Des idées pourquoi?
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()))
isEmpty
retourne réellement True
si la première clé fournie par le dictionnaire est vraie et renvoie le False
contraire. Si le dictionnaire est vide, il renvoie None
ce qui ne l'est pas == False
.
self.users
n'est pas vide, faites-leif self.users
.