Excellent. I think I'll go with the Django route. I guess if web2py looks tempting later (based off comment below), I can make an educated switch and know what's what. Thanks!
My advice is take 5 minutes with both (Django and web2py). Even if you choose Django, web2py has a web based IDE which will teach you the MVC design (which Django calls MTV).
web2y also takes much less time to get up and running therefore it is no really extra cost to try.
Most concepts translate line by line (Django admin ~ web2py appadmin, Django request.POST ~ web2py request.post_vars, Django request.GET ~ web2py request.get_vars).
The latest web2py also use a thread local object (a cool stolen from Flask). web2py has a pure Python template language, Django has a domain specific language for templates that is not Turing complete. In Django you have to explicit about everything (for example you have to list all mapping of URLs into function calls) while web2py has defaults and conventions (which can be overwritten) and it feels closer to ruby on rails.
Web2py comes with more stuff in the box (more supported databases, runs on Google App Engine including db queries, credit card payment api, multi-tenancy, multiple types of federated authentication, pdf generation, hooks for nginx/gunicorn/gevent, etc).
Web2py does not mess with python internals and has more readable code than Django, for example it does not uses complex meta-class programming for the ORM. What some do not like (but buys you a loot of goodies) is that web2py executes some of your code instead of importing it. This allows hot plug and play of applications (even in production) and allows to run multiple apps under one server without library conflicts.
web2py is very secure. For example it had cross-site-request-forgery prevention 2 years before Django did, despite being at least 4 years younger.
Both can be used exclusively from the shell. web2py can also be used from the web based ide but does not force it on you.