I have been learning a bit of Python 2 and Python 3 and it seems like Python 2 is overall better than Python 3. So that's where my question comes in. Are there any good reasons to actually switch over to python 3?
More iterators (in things like dict.keys()) will be a big boost for web applications.
The core team will put more work into the new version. New books might focus on python 3 (see Dive into Python), but the real work is still done in python 2.
Sooner or later, the big libraries (numpy, wx, django) will be ported. Until those big three switch, I can't see many people using python 3. But those aren't impossible projects to port.
Once the big libraries are ported, the community will face a real choice. That's when it will start to catch on.
Will Python 3 ever catch on?