I want to learn Python for Web Programming. As of now I work on PHP and want to try Python and its object oriented features. I have basic knowledge of python and its syntax and data strucures.
I want to start with making basic web pages - forms, file upload and then move on to more dynamic websites using MYSQl.
As of now I do not want to try Django or for that matter any other frameworks.
Is python with cgi and MySQLdb modules a good start?
Thanks
Having used both Flask and Django for a bit now, I must say that I much prefer Flask for most things. I would recommend giving it a try. Flask-Uploads and WTForms are two nice extensions for the Flask framework that make it easy to do the things you mentioned. Lots of other extensions available. 
If you go on to work with dynamic site attached to a database, Flask + SQL Alchemy make a very powerful combination. I much prefer the SQLAlchemy ORM to the django model ORM.
Python Web Programming - Not Using Django