Some tools/environments may be marginally better adapted to certain tasks than others, but when it comes to distinguishing between bash, python, perl and ruby (and similar) for administrative scripting, you should consider (if not favour) the human factors:
- Is maintainable? (You touched on this in your question.)
- Is it usable by other people within your organization? If you're (somehow) the only admin in your company who knows any python, it probably isn't be the right language to use, even if it makes shorter or more efficient scripts than the equivalent bash.
If the environments are equally available on your systems, and if many languages fit the bill, choose the one you're most comfortable with. Why? It will shorten development time, facilitate debugging, increase maintainability and at least not reduce institutional usability.
My subjective preference is for bash as well, but that doesn't matter: it's only my choice because I'm comfortable with it (say, I know how to manipulate
iptables without looking up documentation).