python - 为什么 sort() 函数不能应用于列表理解?

标签 python python-3.x

>>> a = [i for i in range(3,0,-1)]
>>> a
[3, 2, 1]
>>> b = [i for i in range(3,0,-1)].sort()
>>> b
>>> c = sorted(i for i in range(3,0,-1))
>>> c
[1, 2, 3]

b 变成 None,这没有意义。

最佳答案

sort() 方法就地运行并返回 None。您必须首先存储列表,然后对其调用排序。对于b,首先创建列表,然后对其进行排序,sort()的返回值被分配给b,并且原始列表丢失。

关于python - 为什么 sort() 函数不能应用于列表理解?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55565319/

相关文章:

python - 将yield与python中的if/else循环结合起来

python-3.x - 奇怪的 Pandas 日期切片行为(不切片日期)

python - 跨文件的全局变量和 numpy 行为

python - Django 与 python 2.7 utf-8 问题

python - uniq、groupby 的用例,无需排序

python - 导入 jcc,DLL 加载失败

python - 在 pandas 中过滤、分组和计数?

python - 如何从 python 循环中获取特定术语

python - 如何优化运行 4**k 次的 python 脚本?

Python C-API 对象初始化