This is has worked for me:

- brew python for my global environment.

- Create a virtual enviroment for each project (python -m venv).

- Use pip install after activating it (source venv/bin/activate)

If you need to work with different versions of python replace brew python with pyenv.

> replace brew python with pyenv.

replace pyenv with asdf [0]. asdf is like pyenv, but it works for all major programming languages.

[0] https://github.com/asdf-vm/asdf