It sounds like when you're running your app.py file directly, you're not using the virtualenv. Specifying a virtualenv on the "Web" page only means that when a request comes in to your site, your code will be run using that virtualenv. If you're running your code anywhere else -- from a Bash console, from the editor, or in some other way -- then you'll need to tell it to use the virtualenv.
However, if you've set everything up on the "Web" page so that the virtualenv is used there, you normally don't need to do anything else -- because the code is automatically run when a request comes in to your site, there's no need to run it from the editor or a console.