问题标签 [generator-expression]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1679 浏览

python - Python为生成器表达式中使用的条件连接字符串

我有一组生成器表达式的条件,它们会有所不同,如果可能的话,我想尝试将条件连接为字符串,并在生成器表达式中使用这个字符串变量:

以下工作正常:

其中 date 是一个整数,Sales_Store 是具有相同键的字典列表,“Date”是键名之一。它返回满足此条件的销售商店中的销售数量。

但这会产生错误:+ 的不支持的操作数类型:'int' 和 'str'

当然,如果某个其他条件成立,我只希望在生成器表达式中使用此条件,并且有几个其他条件可以与此连接,每个条件仅适用于某些情况。

那么你知道是否有办法使这种串联工作?

0 投票
2 回答
86 浏览

python - 列表理解语句中的 OR 和 ELSE 是否相似

请帮助我理解为什么会这样。下面的代码列出了迭代中的重复项。但是,使用or运算符的行为类似于 if..else 语句中的 else。

期望这条线是:

思考或返回布尔值而不是值

0 投票
3 回答
91 浏览

python - 如何将 if/else 语句与多个支持表达式一起放入列表理解中

我如何将这种循环转换为列表理解。

到目前为止,我的搜索让我理解了只有 if else 语句而不执行任何其他功能,如 .

但我首先必须将函数应用于循环变量,然后必须使用条件结构。

任何帮助,将不胜感激。

0 投票
3 回答
329 浏览

python - 生成器和文件

当我写:

文件是立即打开还是仅在我开始使用生成器表达式时才访问文件系统?

0 投票
1 回答
538 浏览

python - Why converting list to set is faster than converting generator to set?

Here is an example

It is very confusing. Generator takes less time to create(and that is understandable) but why converting generator to set is slower than converting list when it should(atleast to my knowledge) have been the opposite.

0 投票
1 回答
167 浏览

python - 如何将 for 循环与 if-else 语句合并?

我正在尝试删除列表中所有彼此相等的第一个元素,但我发现我的代码很难看。

这里举个例子:my_list = [1,1,1,9,9,2]成为my_list = [1,9,9,2]

如何压缩它?我听说过生成器表达式,但我在包含我的else break语句时遇到了问题。

0 投票
3 回答
3660 浏览

python - 带有“next(c for c in l if)”的python语句的含义

在将一些 python 代码移植到 PHP 中时,我遇到了以下代码的问题:

我想不通,线是什么

确实意味着。

谁能解释一下这句话的含义?

先感谢您!

0 投票
1 回答
207 浏览

python - 使用所有先前的结果应用函数 n 次

我想知道是否有一种pythonic方法可以多次应用一个函数,其中所有最后的结果都是再次使用列表理解或生成器表达式而不是像这样的for循环的输入?

编辑:不幸的是,itertools.accumulate似乎只考虑最后一个,但不是所有最后一个结果。还有什么想法吗?

0 投票
2 回答
3717 浏览

python - 生成器表达式中的多个产量?Python

我一直在尝试将此生成器函数转换为生成器表达式,但没有成功。生成器表达式是否可以具有相同的输出?

我尝试了以下方法,但得到了 (None, None, None) 输出。

我也这样做了,但它提供了 4 个嵌套元组而不是上面的列表。

另外,如何向生成器表达式添加参数?提前谢谢了。

0 投票
1 回答
1325 浏览

python - “元组推导”和星形 splat/unpack 运算符 *

我刚刚阅读了这个问题为什么 Python 中没有元组理解?

接受的答案的评论中,指出没有真正的“元组理解”。相反,我们当前的选择是使用生成器表达式并将生成的生成器对象传递给元组构造函数:

或者,我们可以使用列表推导式创建一个列表,然后将该列表传递给元组构造函数:

最后,与公认的答案相反,最近的一个答案指出,元组推导确实是一件事(从 Python 3.5 开始),使用以下语法:

  • 对我来说,第二个示例似乎也是首先创建生成器对象的示例。这个对吗?

  • 就幕后发生的事情而言,这些表达方式有什么不同吗?在性能方面?我假设第一个和第三个可能有延迟问题,而第二个可能有内存问题(如链接评论中所述)。

  • 比较第一个和最后一个,哪个更pythonic?

更新:

正如预期的那样,列表理解确实要快得多。我不明白为什么第一个比第三个快。有什么想法吗?