<p>Python works on multiple platforms and can be used for desktop and web applications, thus I conclude that there is some way to compile it into an executable for Mac, Windows and Linux.</p>

<p>The problem being I have no idea where to start or how to write a GUI with it, can anybody shed some light on this and point me in the right direction please?</p>

First you will need some GUI library with Python bindings and then (if you want) some program that will convert your python scripts into standalone executables.
Cross-platform GUI libraries with Python bindings (Windows, Linux, Mac)
Of course, there are many, but the most popular that I've seen in wild are:
Tkinter
- based on
Tk GUI toolkit
(de-facto standard GUI library for python, free for commercial projects)
WxPython
- based on
WxWidgets
(popular, free for commercial projects)
Qt
using the
PyQt bindings
or
Qt for Python
. The former is not free for commercial projects. The latter is less mature, but can be used for free.
Complete list is at
http://wiki.python.org/moin/GuiProgramming
Single executable (all platforms)
PyInstaller
- the most active(Could also be used with
```
PyQt
```
)
fbs
- if you chose Qt above
Single executable (Windows)
py2exe
- used to be the most popular
Single executable (Linux)
Freeze
- works the same way like py2exe but targets Linux platform
Single executable (Mac)
py2app
- again, works like py2exe but targets Mac OS