Let exception fire or return None

Cecil Westerhof Cecil at decebal.nl
Thu Apr 30 11:13:05 CEST 2015

Op Thursday 30 Apr 2015 10:18 CEST schreef Dave Angel:

> On 04/30/2015 03:43 AM, Cecil Westerhof wrote:
>> I have a function to fetch a message from a file:
>> def get_indexed_message(message_filename, index):
>> """
>> Get index message from a file, where 0 gets the first message
>> """
>> return open(expanduser(message_filename),
>> 'r').readlines()[index].rstrip()
>> What is more the Python way: let the exception fire like this code
>> when index is to big, or catching it and returning None?
>> I suppose working zero based is OK.
> Fire an exception.
> One advantage is that the exception will pinpoint exactly which line
> of the function had a problem.

That is what I did. The only ‘problem’ is that they need to catch the
error if they do not know the number of messages in the file. But they
can use get_nr_of_messages for that.

Cecil Westerhof
Senior Software Engineer
LinkedIn: http://www.linkedin.com/in/cecilwesterhof

More information about the Python-list mailing list