Abstraction and Structure
Abstraction can be useful as a labor saver, but it is actually more important than that. It is the key to making computer programs understandable to humans (which is essential, whether you’re writing them or reading them). The computers themselves are perfectly happy with very concrete and specific instructions, but humans generally aren’t.
Now, if I instead told you to “Walk down this street until you get to a bridge, cross the bridge, and the cinema is to your left,” you would certainly understand me. The point is that you already know how to walk down the street and how to cross a bridge. You don’t need explicit instructions on how to do either.
Your programs should be quite abstract, as in “Download page, compute frequencies, and print the frequency of each word.” This is easily understandable.
Creating Your Own Functions
def hello(name):
return 'Hello, ' + name + '!'
Documenting Functions
def square(x):
'Calculates the square of the number x.'
return x*x
The docstring may be accessed like this:
>>> square.__doc__
'Calculates the square of the number x.'