generic_mean

Implement a generic function called generic_mean which will take a collection as the first argument (it can be a list, a set, or a list of tuples) and a function as a second argument that obtains a number from each element of the collection. The generic_mean should also ignore all the elements which have the value of 0 after applying the function.
def generic_mean():
    ...

print(generic_mean([1, 0, 3], lambda x: x))                   # 2
print(generic_mean({1, 2, 3}, lambda x: x))                   # 2
print(generic_mean([(1, 3), (4, 6)], lambda x: x[0] + x[1]))  # 7
 

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue