当前位置: 首页 > 面试题库 >

列出理解返回值加上[None,None,None],为什么?

卫烨烁
2023-03-14
问题内容

我正在学习理解力。我得到了print(x)部分(我认为。它打印通过了’in’测试的x的值),但是为什么以后还返回None列表呢?

>>> g
['a', 'x', 'p']

>>> [print(x) for x in g]
a
x
p
[None, None, None] #whats this?

问题答案:

您使用列表理解来打印列表中的项目,然后打印列表本身。尝试将列表分配给变量。

>>> g
['a', 'x', 'p']

>>> x = [print(x) for x in g]
a
x
p
#

现在,该列表以x表示,没有打印出来。清单还在那里…

>>> print(x)
[None, None, None]
>>> x
[None, None, None]


 类似资料:
  • 问题内容: 为什么要用Python返回? 我如何获得改组后的值而不是? 问题答案: 更改列表 到位 。 在原位更改结构的Python API方法通常返回,而不是修改后的数据结构。 如果要基于现有列表创建 新的 随机混排列表,并按顺序保留现有列表,则可以使用输入的完整长度: 您还可以将with用于排序键: 但这会调用排序(O(NlogN)操作),而采样到输入长度仅需要O(N)操作(与所使用的过程相同

  • 问题内容: 码: 即使在两种情况下它应返回一个空列表,代码也会输出None: 和 详细信息:该代码用于我为python练习制作的列表排序模块(我在python上相对较新)。是修改后的mergesort。 问题答案: @reut首先了解它,但是 不 另外 应该 如果将两者都设置为[]则都不设置,则意味着a2为[1]且b2都不为您将a2丢掉。我猜这是意外的。 同样在代码中,在较低的sortClass中

  • 问题内容: 为什么要用返回? 我如何获得改组后的值而不是? 问题答案: 更改x列表到位。 就地更改结构的方法通常返回None,而不是修改后的数据结构。 如果要基于现有列表创建新的随机混排列表,并按顺序保留现有列表,则可以使用输入的完整长度: 你还可以将用于排序键: 但这会调用排序(操作),而采样到输入长度仅需要O(N)操作(与所使用的过程相同,即从收缩池中换出随机值)。 演示:

  • 问题内容: 我想将一个字符串添加到列表中: 但它打印。这是为什么? 问题答案: 该函数是就地函数,即它将对原始列表本身进行更改。来自文档 通过添加 给定 列表中的所有项目来扩展列表;等效于a [len(a):] =L。 因此,您无需将其重新分配回列表变量。 你可以做 然后当您打印时 更好的方法 如下所述使用是更好的方法。

  • 问题内容: 我想生成对称的零对角矩阵。我的对称零件正常工作,但是当我从numpy使用fill_diagonal作为结果时,结果为“无”。我的代码如下。感谢您的阅读 问题答案: 与跨python / numpy的许多其他方法一样,它可以就地工作。例如:为什么“ return list.sort()”返回None,而不返回列表? 。那是因为它直接更改了内存中的对象,而不创建新对象。这些函数的返回值为。

  • 问题内容: 我正在尝试使用Python(3.4)MySQL模块通过以下代码在本地MySQL数据库上进行查询: 据我所知,连接成功,数据库由几行组成,但是查询始终返回none类型。 MySQL执行功能哪些实例返回None? 问题答案: 查询执行没有返回值。 您需要遵循的模式是: 或在python中: 还有一些数据库模块允许您使用for … in模式遍历游标,但对mysql进行三重检查。