# sorted() Anonymous contributor Anonymous contributor
Published Jul 14, 2021Updated Jul 26, 2023
Contribute to Docs

Takes in an iterator object, such as a list, tuple, dictionary, set, or string, and sorts it according to a parameter.

## Syntax

``````sorted(iterable, key=None, reverse=False)
``````

The `key` and `reverse` parameters are optional, and will default to `None` and `False`. `False` sorts ascending, and `True` descending. The `key` takes an input function to determine the comparison key.

## Example 1

`sorted()` can be used on either numbers or letters, but not on a combination of the two:

```my_list = ["beta", "epsilon", "alpha", "delta", "gamma"]
new_list = sorted(my_list)
print(new_list)# Output: ['alpha', 'beta', 'delta', 'epsilon', 'gamma']
```
```my_list = [7,2,3,5,1,4,6]
new_list = sorted(my_list)
print(new_list)# Output: [1, 2, 3, 4, 5, 6, 7]
```

## Example 2

Changing the `reverse` parameter changes the order of the sort:

```my_list = [7,2,3,5,1,4,6]
new_list = sorted(my_list, reverse=True)
print(new_list)# Output: [7, 6, 5, 4, 3, 2, 1]
```

## Example 3

When `reversed` is `False`, `sorted()` will sort numbers from low to high, and letters alphabetically. However, capital letters will come before lowercase letters. In order to sort all objects with the same key, use a function with the key `parameter`:

```my_string = "bCEad"
after_sorted = sorted(my_string)
print(after_sorted)# Output: ['C', 'E', 'a', 'b', 'd']
after_sorted = sorted(my_string, key=str.lower)
print(after_sorted)# Output: ['a', 'b', 'C', 'd', 'E']
```

## Example 4

The `key` parameter can also be used to sort by other comparisons, such as length:

```my_list = ["aaa", "bb", "c"]
my_sorted_list = sorted(my_list)
print(my_sorted_list)# Output: ['aaa', 'bb', 'c']
my_sorted_list = sorted(my_list, key=len)
print(my_sorted_list)# Output: ['c', 'bb', 'aaa']
```

## Example 5

The `key` parameter can even take in custom functions:

```def sorting_func(i):  return i - i**2
my_list = [2,1,4,3]
my_sorted_list = sorted(my_list)
print(my_sorted_list)# Output: [1, 2, 3, 4]
my_sorted_list = sorted(my_list, key=sorting_func)
print(my_sorted_list)# Output: [4, 3, 2, 1]
```

## Codebyte Example

Sorting a list of dictionaries based on a specific key:

`Favicon IconCodeOutputLoading...`