关于Python中list.sort()的疑问

为什么可以:

list1.sort()
list2 = list1

但是不能直接:

list2 = list1.sort()

list1.sort()是对list1直接改变,返回值为None,所以第一个是可以的
sorted(list1)不对list1作改变,但返回排好序的结果,所以可以list2=sorted(list1)

list1.sort() 是原地修改,直接修改的是list1的值,返回值是None

list2 = sorted(list1) 这个不会修改list1的值,将排序后的结果返回赋值给list2