Lower the volume of my computer over time in Python
"I feel like there should be a cleaner way to deal with default values of optional arguments"

Yes, there is. Per the documentation of ArgParse, you can specify a keyword argument default and give it the value you want.


parser.add_argument("-d", "--delay", help="Delay in minutes until starting mute", type=int, default=0)


Documentation here
Tutorial here