Postgresql already supports both python2 and python3. The current make is set up so that when it is built it picks either python 2 or python 3, the user can build it again and then copy the python3.so or python2.so into the proper directory. (I will submit a bug with an addition to the doc tonight). When the python use flag is enabled the current ebuilds pull in python2.7 as a dependency and it builds in python2 support, not python3 support. I don't know what everyone else wants to do but I think that, because some users may have python2 functions in their databases that there is a python2 and a python3 use flag. Another option is to make the python use flag default to either python 2 or 3 based on the /usr/bin/python symlink. The one drawback about the use flags is currently to support both python2 and python3 postgres must be built twice. We could always patch the makefile if we need to.
After reading up on simultaneous python versions I saw that a session cannot run 2 different versions of python if using plpython functions: http://www.postgresql.org/docs/devel/static/plpython-python23.html It may be simpler to have a python use flag which checks which python on the system is used and then autoenables a python2 or python3 use flag.
*** This bug has been marked as a duplicate of bug 427954 ***