Style Notes: Wise Choice of File Names
There is considerable flexibility in the language; two people can
arrive at different presentations of Python source. Throughout this book
we will present the guidelines for formatting, taken from the Python
Enhancement Proposal (PEP) 8, posted on python.sourceforge.net/pep.
We'll include guidelines that will make your programming consistent
with the Python modules that are already part of your Python environment.
These guidelines should also also make your programming look like other
third-party programs available from vendors and posted on the
Python programs are meant to be readable. The language borrows a lot
from common mathematical notation and from other programming languages.
Many languages (C++ and Java) for instance, don't require any particular
formatting; line breaks and indendentation become merely conventions;
bad-looking, hard-to-read programs are common. On the other hand, Python
makes the line breaks and indentations part of the language, forcing you
to create programs that are easier on the eyes.
General Notes. We'll touch on many aspects of good Python style as we introduce
each piece of Python programming. We haven't seen much Python yet, but
we do need some guidance to prevent a few tiny problems that could crop
First, Python (like all of Linux) is case sensitive. Some languages
that are either all uppercase, or insensitive to case. We have worked with
programmers who actually find it helpful to hse the Caps Lock key on their
keyboard to expedite working in an all-upper-case world. Please don't do
this. Python should look like English, where lower-case letters
Second, Python makes use of indentation. Most programmers indent
very nicely, and the compiler or interpreter ignores this. Python doesn't
ignore it. Indentation is useful for write clear, meaning documents and
programs are no different.
Finally, your operating system allows a fairly large number of
characters to appear in a file name. Until we start writing modules and
packages, we can call our files anything that the operating system will
tolerate. Starting in Part IV, “Components, Modules and Packages”, however, we'll
have to limit ourselves to filename that use only letters, digits and
_'s. There can be just one ending for the file:
A file name like
exercise_1.py is better than
execise-1.py. We can run both programs
equally well from the command line, but the name with the hyphen limits
our ability to write larger and more sophisticated programs.