From 244ae416bb52af8619176a6ee9c6c80c4aa5ff4d Mon Sep 17 00:00:00 2001 From: Manuel Ebert Date: Tue, 8 May 2012 13:04:35 +0200 Subject: [PATCH] Modernised tag count syntax, Python 3 idioms galore! --- jrnl.py | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/jrnl.py b/jrnl.py index 5074d42d..2cae6b13 100755 --- a/jrnl.py +++ b/jrnl.py @@ -457,13 +457,9 @@ if __name__ == "__main__": print(journal) elif args.tags: # get all tags - tags = {} - for entry in journal.entries: - for tag in entry.tags: - tags[tag] = tags.get(tag, 0) + 1 - tags = [(n, tag) for tag, n in tags.viewitems()] - tags.sort(reverse=True) - for n, tag in tags: + tags = [tag for entry in journal.entries for tag in set(entry.tags)] + tag_counts = {(tags.count(tag), tag) for tag in tags} + for n, tag in sorted(tag_counts, reverse=True): print "%-20s : %d" % (tag, n) elif args.json: # export to json