[Tutor] new to python error handling question
Alan Gauld
alan.gauld at blueyonder.co.uk
Mon Apr 12 19:50:00 EDT 2004
Erick,
I think you maybe need to slow down and take a few steps back here.
There are a few weird things in your code that suggest you don't
really understand whats happening and that will lead to problems
later.
BTW YOu don;t say if you have any previous programming experience
in other languages? If so that helps us phrase our responses.
> def do_list(*??*):
The *??* is where you pass in values that your function will use.
In this function a sensible thing wouyld be the address used by
the ftp.retrlines call
def do_list(address):
> try:
> ftp.retrlines("list")
You would then use the address parameter in here
ftp.retrlines(address)
> pass
You don't need this it literally does nothing!
> except (AttributeError):
This checks for an AttributeError being raised in the previous
try section. BTW I donlt think you need the parens around
AttributeError.
If the try/except was missed out the error would be passed back
to Python and it would print an error message.
> print "AttributeError"
> pass
Again the pass does nothing
> return ()
And this returns an empty tuple to the caller, which is probably not
what you want?
> Why does it for sure detect AttributError when
> if i take the Try,Except off, it does'nt.
Dunno, can you show/tell us what you do get without the try/except?
It looks like you need to read the bit about defining functions
in your tutorial (whichever it is) soince you seem confused about
how they work. Also the try/except stuff. Both are covered in my
web tutor if you can't find it elsewhere, look under
"Modules & Functions" and "Error Handling"
Alan G
Author of the Learn to Program web tutor
http://www.freenetpages.co.uk/hp/alan.gauld
More information about the Tutor
mailing list