On Fri, 20 Aug 2010 09:21:25 +0200, Kai Borgolte wrote: > Sorry about my previous posting with wrong references, this one should > be better. > > Steven D'Aprano wrote: > >>A simple example: Using zero-based indexing, suppose you want to indent >>the string "spam" so it starts at column 4. How many spaces to you >>prepend?
As AK pointed out, I totally messed up the example by talking about column 4 then giving an example of column 5. Sigh. 0123456789 spam > No, you won't want to indent a string so it starts at column 4. You > simply want to indent the string by four spaces. Like in PEP 8: > > /Use 4 spaces per indentation level./ I don't see what PEP 8 has to do with anything here. Code is not the only thing that needs indenting, and 4 was just a mere example chosen at random. I might be pretty-printing a table of numbers, I might be drawing a text-based maze, I could be writing a function to left-fill strings with some arbitrary character, e.g left-fill with asterisks: 01234567 ****spam Besides, PEP 8 is merely a coding standard, not a law of nature. Some people might choose other coding standards, such as two-space indents, eight-spaces, or even (gasp! horror!) tabs. > And of course your text editor will number the columns beginning with > one, so the string starts at column 5. Ah, text editors. I'm glad you mention that... My text editor of choice is kwrite, which suits me fine, but it has one obnoxious, painful design choice. It indexes characters from one, so when I have the cursor at the left-hand margin and haven't typed anything, it says I'm at position 1. Consequently, if I want to know how many characters are in a line (and you'd be amazed how frequently I need to do this!), I can't just glance at the cursor position, I have to remember to subtract one from whatever the cursor position says. -- Steven -- http://mail.python.org/mailman/listinfo/python-list