What Version Of wxPython Should I use?

I recently started creating a series of Youtube videos entitled wxFormBuilder: Build a Python Gif Viewer

A question came up because a viewer was getting an error as a result of the python code I was providing.

It turns out the viewer was using wxPython version 3.0 (Phoenix) and I was using an older wxPython version

That’s why there was an error. I was using an older version of wxPython and the viewer was using a later version of wxPython. This dilema brings up some interesting questions:

  • Why am I using an older version and not the latest wiz bang version?
  • Does this mean I’m old fashioned and don’t want to let go of the old ways?

All will be revealed.

Building python GUI’s using wxPython is a very satisfying experience and I want to share that experience with others. Especially newbies.

Like most newbies I wanted to go straight into building really cool GUI applications. With little care or understanding on how to communicate with the GUI using the mother language, python. WRONG!!!

I know you don’t want to hear this… But many pythonic aficionados will say, “you need to understand how to use python before venturing into wxPython”. That is true. It turns out, developing GUI’s requires the use of python scripts more than using a GUI. Mind you it’s taken me five years to realise or should I say accept this. You could say a GUI is a visual interpretation of a python script.

“But I want to learn how to use wxPython”. I know how you feel.

The way I like to learn how to program isn’t creating a “hello world” program. Yay it can print “hello world”… Whoopee Doo!!! What has that got to do with the molecular structure of the universe? Nadah!

There is another way to learn. I like to build real life applications that I can use everyday, while learning at the same time. This motivates me and energises me to learn more and more with a passion.

Now before you start learning how to use wxPython, you need to make a decision.

What version of wxPython should I use?

Now that is a really big question to ask, because it isn’t the case of which version is the best. It’s more along the lines, which version is default on my operating system?

Python On Windows

There was a time when I assumed I should move onto the latest version of python and wxPython, so I could keep up with the latest coding methods. I’m using python on windows so it doesn’t really matter what version of python and wxPython I use. This is because python isn’t used in the Windows operating system.

Python On Mac

I don’t have a Mac computer so it doesn’t matter what version I use for a Mac.

Python On Linux Ubuntu

But I do use Linux Ubuntu 14.04 LTS. The Default python version on Ubuntu 14.04 LTS is 2.7.6 and the wxPython version is

Yes I know I can install the latest python and wxpython versions on Ubuntu but that could create problems with the operating system. Because it uses python 2.7.6 and wxpython

That is why I have stuck with python 2.7 and wxPython on my windows computer. Because when I build a python GUI application using wxFormBuilder and wxPython on windows. I can put that python application on Linux Ubuntu and it runs.

So the answer to the question: What version of wxPython should you use? That’s not for me to say. It’s really up to you, what you want to do and where you want to use wxPython.

But If you’re using or want to use Linux and the most popular distro Ubuntu 14.04 LTS, then it might be a good idea to use python 2.7.x and wxpython

Basically wxPython version 3 requires different coding methods.

Based on these version decisions, the Youtube wxFormBuilder video series will be based on python 2.7.x and wxPython only. If you want to learn from my video series on how to build wxPyhon GUI’s using wxFormBuilder. I would suggest you use python 2.7.x and wxPython to avoid any errors in your code.

Reference Links:

Python: https://www.python.org/
wxPython: http://www.wxpython.org/
wxFormBuilder: http://sourceforge.net/projects/wxformbuilder/
YouTube wxFormBuilder: Build a Python Gif Viewer video series