Automatically call all functions matching a certain pattern in python
Question: In python I have many functions likes the ones below. I would like to run all
the functions whose name matches `setup_*` without having to explicitly call
them from main. The order in which the functions are run is not important. How
can I do this in python?

    
    
    def setup_1():
        ....
    
    def setup_2():
        ....
    
    def setup_3():
        ...
    
    ...
    
    if __name__ == '__main__':
        setup_*()
    


Answer: 
    def setup_1():
        print('1')
    
    def setup_2():
        print('2')
    
    def setup_3():
        print('3')
    
    if __name__ == '__main__':    
        for func in (val for key,val in vars().items()
                     if key.startswith('setup_')):
            func()
    

yields

    
    
    # 1
    # 3
    # 2
    

