用sorted()按与字母顺序相反的顺序打印一个列表的问题
请问:a = ['d','b','c']
print(sorted(a).reverse())
1.为什么会返回None,而不是返回错误
2.这样的方式为什么不能使sorted()按与字母顺序相反的顺序打印一个列表
谢谢{:10_297:} sorted(a)会返回一个倒转的列表
这个列表又可以执行reverse()方法,这个方法是直接作用于元列表的,会返回一个None
所以会打印一个None a = ['d','b','c']
print(list(reversed(sorted(a))))
b=sorted(a)
b.reverse()
print(b)
list.reverse()是在原列表基础上排序,不返回新列表。 reverse是直接修改对象的(直接将列表排序),会返回None
而revesed是将列表对象排序并且返回排序后的列表,这两个一定要区分
上面代码供参考
欢迎追问 青出于蓝 发表于 2021-7-20 17:33
reverse是直接修改对象的(直接将列表排序),会返回None
而revesed是将列表对象排序并且返回排序后的列表 ...
请问为什么要加一个list() 逃兵 发表于 2021-7-20 17:30
sorted(a)会返回一个倒转的列表
这个列表又可以执行reverse()方法,这个方法是直接作用于元列表的,会返回 ...
"sorted(a)会返回一个倒转的列表
这个列表又可以执行reverse()方法"您的这句话我懂了,但后半句不懂 fish初 发表于 2021-7-20 17:41
请问为什么要加一个list()
>>>print(reversed(a))
<list_reverseiterator object at 0x00000132E63D34E0>
<list_reverseiterator object at 0x00000132E63D34E0>为一个迭代器对象的内存地址,要转为列表 青出于蓝 发表于 2021-7-20 18:31
>>>print(reversed(a))
谢谢您嘞 suchocolate 发表于 2021-7-20 17:31
list.reverse()是在原列表基础上排序,不返回新列表。
谢谢
页:
[1]