Duncan Booth wrote: >However the important thing is that a tab does >not map to a single indentation level in Python: it can map to any number >of indents, and unless I know the convention you are using to display the >tabs I cannot know how many indents are equivalent to a tabstop.
Sorry but this is just wrong. Python works out the indentation level for a source file dynamically: see http://docs.python.org/ref/indentation.html. The particular algorithm it uses is designed to accommodate people who mix tabs and spaces (which is unfortunate, and should probably be changed). Nevertheless, using tabs only, one tab does indeed map to exactly one indentation level. One tabstop == one indent, on your editor and on mine. You do not need to know my display convention to run my code. All I can suggest is that you try it out: create a short source file indented with tabs only, and play around with your editor's tabstop setting (and make sure it is writing tab characters, not spaces, to the source file). I promise you the Python interpreter will neither know nor care what your editor display settings were when you last wrote the file. I realise that a lot of code out there uses spaces only. That's unfortunate, but it doesn't mean we should stop explaining to people why tab-indenting is a better standard. This is about freedom: indenting with spaces lets you control over how other people view your code; indenting with tabs give them that control. -- http://mail.python.org/mailman/listinfo/python-list