嵌套列表理解解释
嵌套列表理解提供了一种使用可迭代动态创建复杂列表的简洁方法。虽然可以通过等效的 for 循环来理解它们的功能,但它们的系统方法有助于在不同的示例中应用该概念。
语法和翻译
嵌套列表推导式遵循以下语法:
[exp2([exp1 for x in xSet]) for y in ySet]
打破这个往下看,你会发现对于 ySet 中的每个元素 y,都会创建一个内部列表。在此内部列表中,针对 xSet 中的每个元素 x 计算表达式 exp1。最后,外部列表理解使用创建的每个内部列表评估 exp2。
简化示例
[exp1 for x in xSet for y in ySet]
相当于for循环:
result = [] for x in xSet: for y in ySet: result.append(exp1)
[[exp1 for x in xSet] for y in ySet]
等价的 for 循环:
result = [] for y in ySet: innerResult = [] for x in xSet: innerResult.append(exp1) result.append(innerResult)
系统应用
概括起来,可以按照以下步骤:
记住,发生了for循环的嵌套从左到右,允许以简洁的语法进行复杂的列表转换。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3