From 5ca04ea08f3d64d4e2bfb1b86c7a8a01b2480f87 Mon Sep 17 00:00:00 2001 From: Rapptz Date: Fri, 20 Nov 2015 17:39:19 -0500 Subject: Use try-except instead of checking for membership. Basically, a lot of the checks revolving "if x in y" could be written more efficiently by doing the task anyway and ignoring the exception a la the EAFP guideline. --- discord/client.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'discord/client.py') diff --git a/discord/client.py b/discord/client.py index 12bc6766..9d1ae27c 100644 --- a/discord/client.py +++ b/discord/client.py @@ -311,8 +311,11 @@ class ConnectionState(object): if server is not None: user_id = data['user']['id'] member = utils.find(lambda m: m.id == user_id, server.members) - if member in server.members: + try: server.members.remove(member) + except ValueError: + return + else: self.dispatch('member_remove', member) def handle_guild_member_update(self, data): @@ -364,8 +367,11 @@ class ConnectionState(object): self.dispatch('server_unavailable', server) return - if server in self.servers: + try: self.servers.remove(server) + except ValueError: + return + else: self.dispatch('server_remove', server) def handle_guild_role_create(self, data): -- cgit v1.2.3