From 6db297407cad6a49ae977498a4ea4749dc98059f Mon Sep 17 00:00:00 2001 From: Hui Lan Date: Thu, 26 Dec 2019 18:20:35 +0800 Subject: merge_edges.py: save memory by removing the dictionary variable duniq The purpose of duniq is to avoid duplicated edge lines. Now, just make sure we don't insert the same tuple. -Hui --- Code/merge_edges.py | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/Code/merge_edges.py b/Code/merge_edges.py index 936faf5..a8bd3b9 100644 --- a/Code/merge_edges.py +++ b/Code/merge_edges.py @@ -124,17 +124,14 @@ def make_new_edge(lst_tuple): ##main - d = {} -duniq = {} for fname in sorted(glob.glob(os.path.join(EDGE_POOL_DIR, '*.*'))): print('[merge_edges.py]: including %s.' % (fname)) f = open(fname) for line in f: line = line.strip() - if len(line.split('\t')) == 10 and not line in duniq: - duniq[line] = 1 + if len(line.split('\t')) == 10: lst = line.split('\t') target = lst[0] tf = lst[1] @@ -152,7 +149,7 @@ for fname in sorted(glob.glob(os.path.join(EDGE_POOL_DIR, '*.*'))): if not key in d: d[key] = [t] - else: + elif not t in d[key]: # make sure the tuple to be added to d[key] (a list) does not alreay exist. d[key].append(t) f.close() -- cgit v1.2.1