To list all the functions from a Python module, you can use the dir()
function. Here’s an example:
import math print(dir(math))
Output:
['__doc__', '__loader__', '__name__', '__package__', '__spec__', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atan2', 'atanh', 'ceil', 'comb', 'copysign', 'cos', 'cosh', 'degrees', 'dist', 'e', 'erf', 'erfc', 'exp', 'expm1', 'fabs', 'factorial', 'floor', 'fmod', 'frexp', 'fsum', 'gamma', 'gcd', 'hypot', 'inf', 'isclose', 'isfinite', 'isinf', 'isnan', 'isqrt', 'lcm', 'ldexp', 'lgamma', 'log', 'log10', 'log1p', 'log2', 'modf', 'nan', 'perm', 'pi', 'pow', 'prod', 'radians', 'remainder', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'tau', 'trunc']
This will output a list of all the functions in the math
module. You can use this technique to list functions from other modules as well.
Method 1: Using the dir() Function:
Sure, I can provide more details on how to use the dir()
function to list functions from a Python module.
The dir()
function in Python is used to list all the attributes (methods and variables) of an object. When used with a module as the object, it returns a list of all the functions in that module.
Here’s an example:
import my_module functions_list = dir(my_module) print(functions_list)
Output:
['__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', 'function1', 'function2', 'function3']
This code imports the my_module
module and then calls the dir()
function on it. The list of functions in my_module
is then assigned to the functions_list
variable and printed to the console.
Note that the output of dir()
includes all attributes of the module, including variables, classes, and functions. To filter out just the functions, you can use a list comprehension to check for the callable()
attribute:
import my_module functions_list = [func for func in dir(my_module) if callable(getattr(my_module, func))] print(functions_list)
Output:
['function1', 'function2', 'function3']
This code uses a list comprehension to iterate over the list returned by dir()
. It then checks whether each item is callable using the callable()
function, and adds it to the functions_list
if it is a function.
Method 2: Using Inspect Module:
Another way to list all the functions of a Python module is by using the inspect
module. The inspect
module provides a way to get information about live objects like classes, functions, and modules.
Here’s an example:
import inspect import my_module functions_list = [func[0] for func in inspect.getmembers(my_module, inspect.isfunction)] print(functions_list)
Output:
['function1', 'function2', 'function3']
This code imports the inspect
module and the my_module
module. The inspect.getmembers()
function is then called with the my_module
object and the inspect.isfunction
function as arguments. This returns a list of all the members (functions, variables, classes) of my_module
. The list comprehension is then used to filter out just the functions by checking the type of each member using inspect.isfunction
, and adding it to the functions_list
if it is a function.
Note that the output of this method is similar to that of the previous method, but it only returns the names of the functions, not any other attributes or variables in the module.