高级 Python 列表理解
给定两个列表:
chars = ['ab', 'bc', 'ca']
words = ['abc', 'bca', 'dac', 'dbc', 'cba']
如何使用列表推导式通过以下条件生成过滤的 words
列表:假定每个单词的长度为 n
和 chars< /code> 的长度也是
n
,过滤后的列表应仅包含每个 i
个字符位于第 i
个字符中的单词words
中的字符串。
在这种情况下,我们应该得到 ['abc', 'bca']
结果。
(如果这对任何人来说都很熟悉,这是之前 Google Code Jam 中的问题之一)
Given two lists:
chars = ['ab', 'bc', 'ca']
words = ['abc', 'bca', 'dac', 'dbc', 'cba']
how can you use list comprehensions to generate a filtered list of words
by the following condition: given that each word is of length n
and chars
is of length n
as well, the filtered list should include only words that each i
-th character is in the i
-th string in words
.
In this case, we should get ['abc', 'bca']
as a result.
(If this looks familiar to anyone, this was one of the questions in the previous Google code jam)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
使用 zip:
或使用 enumerate:
Using zip:
or using enumerate:
使用
index
可以正常工作:我错过了什么吗?
This works, using
index
:Am I missing something?
更简单的方法:
A more simple approach:
为什么这么复杂?这也有效:
Why so complex? This works as well: