Let's say the number is 123.

Then the statement:

```
[int(''.join(x)) for x in permutations(list(str(123)))]
```

will create a sorted list of all possible numbers using '1','2' and '3'. which is, [123, 132, 213, 231, 312, 321]

### What it is doing

The part, `permutations(list(str('123'`

is creating a permutatedtuples' list of splitted string '123'. And the `int(''.join(x))`

is converting each tuple to Integer.

However, of course, you need to `import permutations from itertools`

.

so, the generalized version would be:

```
from itertools import permutations
[int(''.join(x)) for x in list(permutations(list(str(n))))]
```

Python is fun. Isn't it?