The Sage notebook doesn't replace a good text editor. It's fantastic for writing 'on the fly' code and for calling pre-written functions, but as far as I know, there's no handy GUI in the notebook for opening, manually editing and saving .py files.
There is, however, very neat support for executing .py and .sage files. The load and attach commands are explained in the tutorial and work both for .sage files and for .py files. attach will automatically reload the file every time it is changed. The preparser is not called for .py files, so you have to import any sage functions that you want to use.
You can set the path for load and attach using load_attach_path.