In /usr/bin there is a python3 and python3.4. What is the difference? If I am setting up virtualenv for 3.4 do I need to point it to the 3.4 file, or does the python3 act like a meta package?
/usr/bin/python3 are just symbolic links to a Python executable for convenient access to a Python 2/3 interpreter or just a python interpreter. In 14.04 they point to:
In combination with virtualenv you should use the executable directly:
/usr/bin/python3.4, but the symbolic links should work as well.