I compiled a .py file into a python byte code single executable file using py2exe according to the instructions here. Accordingly, my setup file looks like so:
from distutils.core import setup
import py2exe, sys, os
sys.argv.append('py2exe')
setup(
    options = {'py2exe': {'bundle_files': 1, 'compressed': True}},
    windows = [{'script': "single.py"}],
    zipfile = None,
)
But now I have the annoying console window, which was easily solved using one of these solutions.
- change .pyextension to.pyw
- change console to window in set up e.g. setup(windows=["main.py"])
But now these solutions no longer work.
 
    