Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 添加两个列表,然后排序=无(?)_Python_Python 3.x - Fatal编程技术网

Python 添加两个列表,然后排序=无(?)

Python 添加两个列表,然后排序=无(?),python,python-3.x,Python,Python 3.x,第二个列表将列表中的每个项目平方为xs。运行下面的代码,python会给我“None” xs = [12, 10, 32, 3, 66, 17, 42, 99, 20] a = [b**2 for b in xs] c = (a + xs).sort() print(c, end=', ') 相同的列表但不同的代码-- …python为我提供了列表(c),全部已排序。我不明白。还是有一种更像蟒蛇的方式来做到这一点 谢谢 一般来说,按照惯例,任何操作到位的东西都将返回None。(但是,不一定总是

第二个列表将列表中的每个项目平方为xs。运行下面的代码,python会给我“None”

xs = [12, 10, 32, 3, 66, 17, 42, 99, 20]
a = [b**2 for b in xs]
c = (a + xs).sort()
print(c, end=', ')
相同的列表但不同的代码--

…python为我提供了列表(c),全部已排序。我不明白。还是有一种更像蟒蛇的方式来做到这一点


谢谢

一般来说,按照惯例,任何操作到位的东西都将返回
None
。(但是,不一定总是遵循此约定。)
somelist.sort()
将对列表进行适当排序

如果您想要一个排序副本,您可以调用
c=sorted(a+xs)
<代码>排序对原始文件的副本进行操作,因此返回副本


这里有一个更为通俗的解释:

一般来说,按照惯例,任何操作到位的东西都将返回
None
。(但是,不一定总是遵循此约定。)
somelist.sort()
将对列表进行适当排序

如果您想要一个排序副本,您可以调用
c=sorted(a+xs)
<代码>排序对原始文件的副本进行操作,因此返回副本


这里有一个更全面的解释:

您使用生成器表达式和itertools来减少这样的临时存储量

>>> import itertools
>>> xs = [12, 10, 32, 3, 66, 17, 42, 99, 20]
>>> a = (b**2 for b in xs)
>>> c = sorted(itertools.chain(a, xs))
>>> c
[3, 9, 10, 12, 17, 20, 32, 42, 66, 99, 100, 144, 289, 400, 1024, 1764, 4356, 9801]

您可以使用生成器表达式和itertools来减少这样的临时存储量

>>> import itertools
>>> xs = [12, 10, 32, 3, 66, 17, 42, 99, 20]
>>> a = (b**2 for b in xs)
>>> c = sorted(itertools.chain(a, xs))
>>> c
[3, 9, 10, 12, 17, 20, 32, 42, 66, 99, 100, 144, 289, 400, 1024, 1764, 4356, 9801]

@OP:
传递
或简单地
返回
的函数等同于
不返回
。python中所有函数调用的输出都是可分配的,即使您认为它们根本没有返回任何内容<代码>列表。排序返回无。@OP:
传递
或简单地
返回
的函数等同于
返回无
。python中所有函数调用的输出都是可分配的,即使您认为它们根本没有返回任何内容<代码>列表。排序返回无。