It is planned that FEniCS will drop support for Python 2 in the 2018.1
release (
http://www.python3statement.org/). Python 2 and 3 will be
supported in 2017.x releases.
FEniCS 2017.1 supports Python 3, and using Python 3 is recommended
interface. DOLFIN 2017.1 built from source defaults to Python 3. In
switching to Python 3, few (if any) changes to programs should be
necessary. The most likely issue is 'print', which in Python 2 is a
statement and in Python 3 is a function (print "foo" ->
print("foo")).
Support for Python 2 is being dropped because Python 2 is approaching
end-of-life and supporting two versions of Python makes it harder to
support users and places a burden on development.
The Docker containers have Python 2 and Python 3 builds of FEniCS and
provide a simple way to test codes against Python 3. Use 'python3' in
the container to run the Python 3 version.
Garth