给定一个待排序的列表，请编写一个程序，通过插入排序算法对该列表进行排序。


[8, 4, 6, 7, 3, 5, 2, 1]
以下是Python实现的插入排序算法：

```
def insertion_sort(arr):
    for i in range(1, len(arr)):
        key = arr[i]
        j = i - 1
        while j >= 0 and key < arr[j]:
            arr[j+1] = arr[j]
            j -= 1
        arr[j+1] = key
    return arr

arr = [8, 4, 6, 7, 3, 5, 2, 1]
print(insertion_sort(arr))
```

输出结果为：`[1, 2, 3, 4, 5, 6, 7, 8]`