From 11fa3c7cd1b151e302d4eee0369cafbaf151c8fb Mon Sep 17 00:00:00 2001 From: Michael Selik Date: Sun, 2 Apr 2017 02:02:31 -0400 Subject: [PATCH] bpo-29957: change LBYL key lookup to dict.setdefault (#938) * change LBYL key lookup to dict.setdefault The ``results`` was constructed as a defaultdict and we could simply delete the check ``if key not in results``. However, I think it's safer to use dict.setdefault as I'm not sure whether the caller expects a regular dict or defaultdict. * add name to the acknowledgements file * use defaultdict to make the key-lookup cleaner --- Lib/lib2to3/btm_matcher.py | 5 ----- Misc/ACKS | 1 + 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/Lib/lib2to3/btm_matcher.py b/Lib/lib2to3/btm_matcher.py index eabe1a71a65..3b78868038b 100644 --- a/Lib/lib2to3/btm_matcher.py +++ b/Lib/lib2to3/btm_matcher.py @@ -117,10 +117,7 @@ class BottomMatcher(object): #token matches current_ac_node = current_ac_node.transition_table[node_token] for fixer in current_ac_node.fixers: - if not fixer in results: - results[fixer] = [] results[fixer].append(current_ast_node) - else: #matching failed, reset automaton current_ac_node = self.root @@ -134,8 +131,6 @@ class BottomMatcher(object): #token matches current_ac_node = current_ac_node.transition_table[node_token] for fixer in current_ac_node.fixers: - if not fixer in results.keys(): - results[fixer] = [] results[fixer].append(current_ast_node) current_ast_node = current_ast_node.parent diff --git a/Misc/ACKS b/Misc/ACKS index 21642065f43..379ffc554ad 100644 --- a/Misc/ACKS +++ b/Misc/ACKS @@ -1376,6 +1376,7 @@ Steven Scott Nick Seidenman Michael Seifert Žiga Seilnacht +Michael Selik Yury Selivanov Fred Sells Jiwon Seo