It is possible to write programs that handle exceptions.
#!/usr/bin/python
import sys
def usage():
print 'Usage: %s <file>' % sys.argv[0]
sys.exit(2)
if len(sys.argv) != 2:
usage()
filename = sys.argv[1]
try:
f = open(filename)
print 'Opening `%s` for reading...' % filename
except:
print 'Could not open `%s` for reading.' % filename
print 'Using default file instead.'
try:
f = open('default.txt')
except:
print 'Could not open `default.txt` either. Exiting'
sys.exit(1)
print f.read()
f.close()