r...@zedat.fu-berlin.de (Stefan Ram) writes:

>   It can lead to errors:
>
> def first_word_beginning_with_e( list_ ):
>     for word in list_:
>         if word[ 0 ]== 'e': return word
>     something_to_be_done_at_the_end_of_this_function()
>     
>   The call sometimes will not be executed here!
>   So, "return" is similar to "break" in that regard.

That can be solved with finally:

def first_word_beginning_with_e( list_ ):
    try:
        for word in list_:
            if word[ 0 ]== 'e': return word
    finally:
        print("something_to_be_done_at_the_end_of_this_function()")

-- 
Pieter van Oostrum <pie...@vanoostrum.org>
www: http://pieter.vanoostrum.org/
PGP key: [8DAE142BE17999C4]
-- 
https://mail.python.org/mailman/listinfo/python-list

Reply via email to