【发布时间】:2010-02-21 11:39:33
【问题描述】:
基本上可以说我有:
>>> a = [1,3,2,2,2]
>>> b = [1,3,2]
我想看看 b 中的所有元素是否存在于 a 中,并且顺序相同。所以对于上面的例子,b 将存在于 a 中。
我有点希望有一个非常简单的单行答案。
【问题讨论】:
-
到目前为止你尝试过什么?这听起来像是家庭作业,所以最好展示一下你所做的事情。
-
你的意思是:“我想看看b中的所有元素是否连续存在于a中”。 “以相同的顺序”是一个较弱的陈述。
-
对不起,我尝试了很长的路要走,只是通过 a,检查第一个元素是否正确,然后继续,如果下一个等于第二个继续,否则重新开始。编写这个大循环似乎很乏味和草率。但是我会经常使用这个。这适用于与某个订购系统/交付使用的运行长度编码相关的工作项目。基本上,我们真正可以交互并拥有自定义功能的唯一方法是直接使用工单,这是一个糟糕的 80 年代代码 cthulu。
-
那么它们必须是连续的('substring')还是不连续的('subsequence')?