Well, no.
There are basically two competing things that made this take a while, and which both stopped being issues right about the same time.
The first was that the initial Python 3 releases were not production-quality stuff. They worked, but they were there to let people get a feel for the changes and maybe start trying out the porting process. Anyone who just jumped to Python 3.0 shortly after release probably had no idea what they were doing (or had a very good idea what they were doing, but that group was a lot smaller).
The second was that we've got this thing, called a userbase :)
And, well, lots of 'em were running operating systems that were still shipping ancient stuff like Python 2.3, and we didn't really want to throw them under the bus, especially since it was mostly beyond their control -- a corporate department said "OK, we're going to go with RHEL", and that was that. So we waited a bit for that situation to start improving, and kicked off a process of deprecating one 2.x version each of the last few releases until, with Django 1.5, we're at a minimum of 2.6.
As for the "stopped being issues" part: Python 3.2 and especially Python 3.3 are very nice, much more mature releases than 3.0/3.1, added stuff that makes porting much less ugly, etc. etc., so suddenly running production stuff on Python 3 is really broadly viable. And, hey, we're on a minimum-2.6 stance now, and 2.6 is when the really nice porting and unified-codebase stuff got added!