Chapter 17

Reflective

image

17.1 Constraints

  • The program has access to information about itself, i.e. introspection.
  • The program can modify itself – adding more abstractions, variables, etc. at runtime.

17.2 A Program in this Style

  1 #!/usr/bin/env python
  2 import sys, re, operator, string, os
  3
  4 #
  5 # Two down-to-earth things
  6 #
  7 stops = set(open("../stop_words.txt").read().split(",") + list(
  string.ascii_lowercase))
  8
  9 def frequencies_imp(word_list):
 10 word_freqs = {}
 11 for w in word_list:
 12  if w in word_freqs:
 13    word_freqs[w] += 1
 14  else:
 15    word_freqs[w] = 1
 16 return word_freqs
 17
 18 #
 19 # Let's write our functions as strings.
 

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.