The standard (and to me, preferable) way of dealing with such things is to have an 'installation manager' that can reinstall as well as delete and that has a check box for various things to delete. This is what Python needs.
I'd dispute strongly that this is a "standard". It may be preferable, but I'm not sure where you see evidence of it being a standard.
When I install a large program (such as developer tools, or python itself) on Windows, I expect a choice of "default" or "custom". When I choose custom, I expect a list of components, which can be chosen, not chosen, or mixed (meaning that it has subcomponents, only some of which are chosen).
The whole thing only shows up once in Add/Remove programs. If I select it, I do get options to Change or Repair. These let me change my mind on which subcomponents are installed.
If I install python and then separately install Zope, it may or may not make sense for Zope to be listed separately as a "program" to Add or Remove. It does not make sense (to me anyhow) have several individual packages within Zope each listed independently at the Windows level. (Though, to be fair, many (non-python) applications *do* make more than one entry.)