1. Библиотеки - это часть готового функционала, который используется большим количеством прогеров
2. Чтобы не писать тот функционал, который всем нужен и который уже реализован и протестирован
3. Для этого используется пакетный менеджер, на сколько я знаю, то в питоне он называется pip, но может быть питонисты меня поправят. В php - это composer, в js - npm, bower.
4. "если я захочу работать со своим кодом на другом компьютере" да, но это решается быстро и автоматечески через консольную команду. Если Вы только начинаете учить программирование и python, то пока не заморачивайтесь с этим.
5. Homebrew - это менеджер пакетов. Нужен для установки python, pip или других программ под Ваш яблочный комп. Библиотеки под ним не ставятся.