Modular programming
As you are programming, the software can quickly scale into a large code base. To manage complexity we can use classes, functions and modules.
Related course
Complete Python Bootcamp: Go from zero to hero in Python
Module content
To show the accessible functions (and included variables) in a module, you can use this code:
#!/usr/bin/env python import sys print(dir(sys)) |
Result:
['__displayhook__', '__doc__', '__egginsert', '__excepthook__', '__name__', '__package__', '__plen', '__stderr__', '__stdin__', '__stdout__', '_clear_type_cache', '_current_frames', '_getframe', '_mercurial', '_multiarch', 'api_version', 'argv', 'builtin_module_names', 'byteorder', 'call_tracing', 'callstats', 'copyright', 'displayhook', 'dont_write_bytecode', 'exc_clear', 'exc_info', 'exc_type', 'excepthook', 'exec_prefix', 'executable', 'exit', 'flags', 'float_info', 'float_repr_style' , 'getcheckinterval', 'getdefaultencoding', 'getdlopenflags', 'getfilesystemencoding', 'getprofile', 'getrecursionlimit', 'getrefcount', 'getsizeof', 'gettrace', 'hexversion', 'long_info', 'maxint', 'maxsize', 'maxunicode', 'meta_path', 'modules', 'path', 'path_hooks', 'path_importer_cache', 'platform', 'prefix', 'py3kwarning', 'pydebug', 'setcheckinterval', 'setdlopenflags' , 'setprofile', 'setrecursionlimit', 'settrace', 'stderr', 'stdin', 'stdout', 'subversion', 'version', 'version_info', 'warnoptions'] |
Create a Module
You can create your own module in these steps:
Create a file called test.py (your module)
#!/usr/bin/env python def add(a,b): return a+b |
Then create a file called app.py:
from test import * print('hello') print(add(5,2)) |