This password generator incorporates the Python Secrets module that was introduced in 3.6. The module was designed to produce cryptographically strong random numbers that are more suitable for producing passwords and access tokens than the older random module.
This program allows you to choose how long you want the password to be and what kinds of characters you would like to use in the randomly generated string.