Why did Guido (or whoever else) decide to make python --version print to stderr rather than stdout? Just curious what the use case is that makes standard error
Python 3.4 was modified to output to stdout, which is the expected behavior. This is listed as a bug with Python here: http://bugs.python.org/issue18338. The comments on the bug report indicate that while stdout is the reasonable choice, it would break backward compatibility. Python 2.7.9 is largely unchanged, because so much relies on it.
Hope that helps!