Chapter 6

Code Golf

image

6.1 Constraints

  • As few lines of code as possible.

6.2 A Program in this Style

 1 #!/usr/bin/env python
 2 import re, sys, collections
 3
 4 stops = open('../stop_words.txt').read().split(',')
 5 words = re.findall('[a-z]{2,}', open(sys.argv[1]).read().lower())
 6 counts = collections.Counter(w for w in words if w not in stops)
 7 for (w, c) in counts.most_common(25):
 8 print w, '-', c

6.3 Commentary

THE MAIN CONCERN of this style is brevity. The goal is to implement the program's functionality in as few lines of code as possible. This is usually achieved by using advanced features of the programming language and its libraries. ...

Get Exercises in Programming Style now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.