Getting started with web programming in Python

Hi. I’m currently a pretty serious PHP freak, but I’d like to switch to Python as it’s more general-purpose and generally seems more all-around clever to me. However, most of the coding I do is web-oriented (my current big project is an “image board;” a message board with special built-in capabilities for handling images with posts), so I’d need to be able to write web apps with Python too. Based on my (not-too-extensive) investigation of the matter, there seem to be many ways of doing this; CGI, Zope, mod_python, and so on. Which is the “sanest” to use (and will work on a shared DH server)? I’ve heard CGI is slow and should be avoided, but DH doesn’t seem to have mod_python… And Zope seems unnecessarily complicated for what I want to do.

What are Python’s equivalent of $_GET, $_POST and $_FILES? What about cookies? Are they (and other features) only supported by mod_python?

Also, does Python have something akin to PHP’s Smarty, not only in terms of templating but caching as well?

Thanks in advance for your help.