Or are there specific situations where one is better than the other?
So far, all I gathered is that future is only available for >=2.6 or >=3.3.
The current code
Python 2.7 will not be maintained past 2020, see https://pythonclock.org/
Thus, if you just started learning python, I would suggest you just use python 3 directly instead of using python 2 and importing __future__.
__future__