Shared hosting is the cheapest type of hosting for simple web sites and blogs. In order to get your app to run on a web server, the web server must first have web2py installed. When web2py is installed and running on a server, it acts like an application server (server that runs individual apps). Java developers would relate web2py's server to something like Tomcat, Glassfish, or JBoss. Once these servers are installed, you simply upload your app to them and they run. web2py works the same way.
Getting web2py running on a web server is the difficult part. Since you are new at deployments, you should look into FluxFlex, as it does web2py deployment for you and all you have to do is upload your app. Check out the video Massimo made: http://vimeo.com/28112026

