# The sort() function will modify the list it is called on.
# The sorted() function will create a new list
# containing a sorted version of the list it is given.
list = [4,8,2,1]
list.sort()
#--> list = [1,2,4,8] now
list = [4,8,2,1]
new_list = list.sorted()
#--> list = [4,8,2,1], but new_list = [1,2,4,8]
>>> sorted((3,7,4,9,2,1,7))
[1, 2, 3, 4, 7, 7, 9]
>>> sorted({'one':1, 'two':2,'three':3,'four':4,'five':5})
['five', 'four', 'one', 'three', 'two']
>>> sorted([3,7,4,9,2,1,7])
[1, 2, 3, 4, 7, 7, 9]
>>> sorted('this is a string')
[' ', ' ', ' ', 'a', 'g', 'h', 'i', 'i', 'i', 'n', 'r', 's', 's', 's', 't', 't']
>>>
numbers = [2,3,5,10,1]
# sorted(numbers): creates a new list, without modifying the numbers list
# numbers.sort(): modifies the numbers list
sorted_numbers = sorted(numbers)
#--> numbers: [2,3,5,10,1]
#--> sorted_numbers: [1,2,3,5,10]
numbers.sort()
#--> numbers: [1,2,3,5,10]