Calling a list of functions
BartC
bc at freeuk.com
Sun Dec 13 12:38:13 EST 2015
On 13/12/2015 17:26, Ganesh Pal wrote:
> Iam on linux and python 2.7 . I have a bunch of functions which I
> have run sequentially .
> I have put them in a list and Iam calling the functions in the list as
> shown below , this works fine for me , please share your
> opinion/views on the same
>
>
> Sample code :
>
> def print1():
> print "one"
>
> def print2():
> print "two"
>
> def print3():
> print "three"
>
> print_test = [print1(),print2(),print3()] //calling the function
>
> for test in range(len(print_test)):
> try:
> print_test[test]
> except AssertionError as exc:
>
> I have put them in a list and Iam calling the functions in the list as
> shown below , this works fine for me , please share your
That's not quite what the code does, which is to call the three
functions and put their results into the list (3 Nones I think).
Then you evaluate each element of the list (a None each time).
I had to modify it to the following, which sets up a list of the three
functions, then calls them in turn using the loop. I don't know what the
'except' part was supposed to do:
def print1():
print "one"
def print2():
print "two"
def print3():
print "three"
print_test = [print1,print2,print3] #NOT calling the function
for test in range(len(print_test)):
try:
print_test[test]() #calling the function
except AssertionError:
pass
The output of the two programs would have been the same I think.
--
Bartc
More information about the Python-list
mailing list