Question: I want to install Fast API to my mac by entering pip install fastapi[all], it errors.

```
kanta@Kantas-MacBook-Air fastapi % pip install "fastapi[all]"
zsh: command not found: pip
kanta@Kantas-MacBook-Air fastapi % pip install fastapi[all] 
zsh: no matches found: fastapi[all]
kanta@Kantas-MacBook-Air fastapi % pip install fastapi[all]
zsh: no matches found: fastapi[all]
kanta@Kantas-MacBook-Air fastapi % pip install 'fastapi[all]'
zsh: command not found: pip
kanta@Kantas-MacBook-Air fastapi % 

```

I think it is because I am using a mac. Is there a workaround?

Answer: 
You can pattern match with [`Option::zip`](https://doc.rust-lang.org/std/option/enum.Option.html#method.zip):

```rust
while let Some((n1, n2)) = node1.zip(node2) {
    ...
}

```
In addition to what @Netwave said, on nightly you can use the unstable [`let_chains`](https://github.com/rust-lang/rust/issues/53667) feature:

```rust
#![feature(let_chains)]

while let Some(n1) = node1 && let Some(n2) = node2 {
    // ...
}

```