A lot of my projects end up requiring C for speed or hardware access, but I prefer to prototype in Python. It basically ends up being that I spend less time in Python but get about 20 times done when I do. :)
Referring to prototyping. I mostly do them with Emacs Lisp. This may sound strange at first, but this allows me to focus on exploring the problem and takes away the pain of setting up an interface to test stuff when they are still fluid.
The funniest part is that once I had to help with a tedious documentation merging task on a tight schedule. Due to extremely limited time constraints I made a half automatic elisp solution that became the standard tool to perform the task. It's still used and by people never exposed to Emacs before.