#encoding = utf-8
list = [1,8,3,6]
print(list.sort()) #None
print(list)#[1,3,6,8]
print(sorted(list))#[1, 3, 6, 8]
print(sorted(list,reverse=True))#[8, 6, 3, 1]
print(list)#[1,3,6,8]
由以上总结,list.sort()是对原始的List进行操作,调用后原始的list会改变,没有返回值。并且sort()只能对list操作。
sorted(iterable, key=None, reverse=False) –> new sorted list 适用于任何可迭代容器,调用后返回的是已经
排好序的iterable,不改变原始的iterabel。
因为对于字符串、列表、元组来说都可以用a[::-1]来取反,要注意a[::-1]返回的是一个逆转的列表、字符串、元组。并不是对a的原地修改
list1 = [1,2,4,23,2]
print(list1.reverse())#None reversed()函数是返回序列seq的反向访问的迭代子。参数可以是列表,元组,字符串,不改变原对象。
rever = reversed(list1)
print(rever) #<list_reverseiterator object at 0x00000080312EB978>返回的是迭代器对象
for i in rever: #需要遍历输出各个元素
print(i)
总结:reverse()是列表的内置方法,无参数,无返回值,reverse()会改变列表(原地反转),因此无需返回值。字典、
元组、字符串不具有reverse()方法,如果调用将会返回一个异常。reversed()函数是返回序列seq的反向访问的迭代子。
参数可以是列表,元组,字符串,不改变原对象。
注意:reversed()之后,只在第一次遍历时返回值。