<s>[INST] What is __future__ in Python used for and how/when to use it, and how it works People including me know there is something in Python called __future__ and it appears in quite a few modules I read. And the dull people like me don't know why it's there, and how/when to use it , even after reading the Python's __future__ doc. 
So any explains with examples to demonstrate it?
I have got a few answers quickly, which look all correct, in terms of the basic usage.
However and also for further understanding how __future__ works:
I just realized one key thing that was confusing me when I tried to understand it, that is, how a current python release include something that will be released in future release?
and how can a program using a new feature in a future python release be compiled successfully by the current python release?
So, I guess now that, the current release has already packaged some potential features that will be included in future releases - is this right? but the features are available only by __future__, that is because it doesn't become standard yet - am I right?
 [/INST] With it, you can slowly be accustomed to incompatible changes or to such ones introducing new keywords.
E.g., for using context managers, you had to do from __future__ import with_statement in 2.5, as the with keyword was new and shouldn't be used as variable names any longer. In order to be able to use a program which uses variables named with, the above import statement is needed.
Another example is
from __future__ import division
print 8/7  # prints 1.1428571428571428
print 8//7 # prints 1

Without the __future__ stuff, both print statements would print 1.
The internal difference is that without that import, / is mapped to the __div__() method, while with it, __truediv__() is used. (In any case, // calls __floordiv__().)
A propos print: print becomes a function in 3.x, losing its special property as a keyword. So it is the other way round.
>>> print

>>> from __future__ import print_function
>>> print
<built-in function print>
>>>

 </s>