[Python-Dev] Triple-quoted strings and indentation
Andrew Durdin
adurdin at gmail.com
Wed Jul 6 06:16:59 CEST 2005
In general, I find triple-quoted strings to be very handy,
particularly for standalone scripts. However, the fact that they have
to be written in the left-hand column to avoid leading whitespace
really grates, particularly when they're nested within a block or two
-- it's a wart:
try:
options, args = getopt.getopt(sys.argv[1:], "cf:s")
except getopt.GetoptError:
print """Usage: dostuff <options>
Options:
-c - blah blah
-f <filename> - do stuff with file "filename"
-s - more blah"""
sys.exit(1)
This really makes the code hard to read, as the indentation is all
mixed up (visually).
I have written a patch that changes the way triple-quoted strings are
scanned so that leading whitespace is ignored in much the same way
that pep 257 handles it for docstrings. Largely this was for a
learning experience in hacking the parser, but it would be very nice
IMO if something of this sort could be implemented in a future version
of Python. To this end, I have sketched out a draft PEP (which was
itself a good learning exercise in thinking out the issues of such a
change). Should I post it here for discussion?
Andrew
More information about the Python-Dev
mailing list