### How can extract different terms from a symbolic expression?

I am trying to dissect an equation into its terms for statements such as "the first term in the denominator...". Optimally, I would like a list of terms, e.g.:

```
var('a b c x')
ex1 = a*x^2 + b/x - c
ex1.terms()
```

[a*x^2, b/x, c]

This used to be possible ages ago by just typing

```
ex1[0]
```

a*x^2

```
ex1[1]
```

b/x

etc.

Similarly, I would like to be able to extract the terms inside a log or exponent, nominator, denominator... Is there a structured way to do this?