Python core code is actually small by design to maintain simplicity. Most functionalities will be through adding third-party packages and modules.
Module is a Python file that contains functions, statements, and classes that will be used inside your code. The first thing to do is import the module then start to use its functions.
On other hand, a package collects related modules connected to each other and puts them in a single hierarchy. Some large packages such as matplotlib or django have hundreds of modules inside them, and developers usually categorize the related modules into a sub-directories. For example, the netmiko package contains multiple sub-directories and each one contains modules to connect to network devices from different vendors:
Doing that gives the package maintainer the flexibility to add or remove features from each module...