I'm interested to know which parts of the python standard library are absolutely guaranteed to be available, and which parts might not be installed, dependent on distribution.
I've seen this question but it doesn't quite provide the answer I'm looking for.
I'm aware that these modules aren't always available and that the math module always is. How about other modules? Are there any modules besides math that are guaranteed to be available?
If you are talking about the standard Python implementation (CPython), then the http://docs.python.org/3/library/index.html page lists the modules it provides (you can choose the Python version on the top of the page).
These are the standard modules included in the Python implementation, but some of them are operating-system specific or may depend on some other platform component. This is usually noted in the documentation of a module with such dependency. E.g.: http://docs.python.org/3/library/posix.html – there is „Platform: POSIX” annotation at the top.
Other dependencies may not be that explicit – http://docs.python.org/3/library/sqlite3.html doesn't say that this module is built only if the sqlite3 was available during Python build, but it is something one can expect.
Anyway, the Python Standard Library reference is always the best place to start. If a module documentation there doesn't say anything about platform and nothing suggests it depends on any external library or platform specific mechanism, then you may assume it is safe to use. But us other had said – anyone is free to remove anything from his Python build.
Anything not from the Standard Library must be considered optional in any Python installation, but the 'pure python' modules from http://pypi.python.org/pypi may be more available for the target audience that some binary modules from the Standard Library.