`zsh` uses [square brackets for globbing / pattern matching](http://zsh.sourceforge.net/Guide/zshguide05.html#l137).
That means that if you need to pass literal square brackets as an argument to a command, you either need to escape them or quote the argument like this:
```python
pip install 'requests[security]'
```
If you want to disable [globbing](http://en.wikipedia.org/wiki/Glob_%28programming%29) for the `pip` command permanently, you can do so by adding this to your `~/.zshrc`:
```python
alias pip='noglob pip'
```
If you don't use quoted arguments, you would get an error like this:
```bash
zsh: no matches found: requests[security]
```