Is it better to do it all at once? I'm very new to wxPython and I'm thinking it would be better to write the program in a way familiar to me, then apply the wxPython gui to it after I'm satisfied with the overall design of the app. Any advice?
This is a viable approach. In fact, some programmers use it for the advantages it brings:

Modular non-GUI code can then be tied in with different GUIs, not just a single library
It can also be used for a command-line application (or a batch interface to a GUI one)
It can be reused for a web application
And most importantly: it can make unit-testing of the code easier.

However keep in mind that it requires some careful design. You'll want your "logic code" to be free from GUI constraints, and sometimes it is difficult (especially when the code relies on GUI idioms like an event loop).
Is it a bad idea to design and develop a python applications backend and then once finished try to apply a GUI to it?