小编dod*_*ddy的帖子

检查元素是否在所有列表中一起出现?

说我有一个像这样的列表列表:

l = [[1,2,3],[6,5,4,3,7,2],[4,3,2,9],[6,7],[5,1,0],[6,3,2,7]]
Run Code Online (Sandbox Code Playgroud)

我如何编写python代码来检查是否有总是一起出现的元素?例如,在上面的例子中,2,3和6,7总是出现在相同的列表中.(可能还有其他人,不确定).

实现这一目标的最简单方法是什么?

我唯一的想法是转换inner-list1为设置和检查交集,inner-list2但当我检查交叉点时inner-list3,这些元素可能根本不会发生inner-list3.

我可以这样做:

for i in range(0,len(lists)):    
    a=set(lists[i]).intersection(lists[i+1])
    if (len(a))==0:
        continue
    else:
        a.intersection(lists[i+1])
Run Code Online (Sandbox Code Playgroud)

这当然不起作用,但我怎么能正式编码这个或者有更好的方法吗?

python list-comprehension list

11
推荐指数
2
解决办法
703
查看次数

从列表列表中删除子列表

我正在尝试找到解决此问题的最快方法,假设我有一个列表列表:

myList = [[1,2,3,4,5],[2,3],[4,5,6,7],[1,2,3],[3,7]]
Run Code Online (Sandbox Code Playgroud)

我希望能够删除作为其他列表之一的子列表的所有列表,例如我想要以下输出:

myList = [[1,2,3,4,5],[4,5,6,7],[3,7]]
Run Code Online (Sandbox Code Playgroud)

其中列表 [2,3] 和 [1,2,3] 被删除,因为它们完全包含在其他列表之一中,而 [3,7] 未被删除,因为没有一个列表包含所有这些元素。

我不限于任何一种数据结构,如果列表列表或集合更容易使用,那也很好。

我能想到的最好的办法是这样的,但它并没有真正起作用,因为我试图在迭代列表时从列表中删除它。我尝试将其复制到新列表中,但不知何故我无法使其正常工作。

for outter in range(0,len(myList)):
outterSet = set(myList[outter])
for inner in range(outter,len(myList)):
    innerSet = set(myList[inner])
    if innerSet.issubset(outterSet):
        myList.remove(innerSet)
Run Code Online (Sandbox Code Playgroud)

谢谢。

python list set

5
推荐指数
1
解决办法
2902
查看次数

熊猫在另一个系列的一个系列中找到超级弦

这不一定要在熊猫中完成,但如果可以在熊猫中完成它会很好.

假设我有一个列表或一系列字符串:

['XXY8779','0060-19','McChicken','456728']
Run Code Online (Sandbox Code Playgroud)

我有另一个列表或系列包含原始的子字符串,如下所示:

['60-19','Chicken','8779','1124231','92871','johnson']
Run Code Online (Sandbox Code Playgroud)

这会返回类似于:

[True, True, True, False]
Run Code Online (Sandbox Code Playgroud)

我正在寻找一个匹配的东西:

^[a-zA-Z0-9.,$;]+ < matching string in other list >
Run Code Online (Sandbox Code Playgroud)

换句话说,从一个或多个任何字符开始,但其余字符与我的其他列表中的一个字符串完全匹配.

有没有人对完成此任务的最佳方法有任何想法?

谢谢!

python regex string substring pandas

1
推荐指数
1
解决办法
82
查看次数

标签 统计

python ×3

list ×2

list-comprehension ×1

pandas ×1

regex ×1

set ×1

string ×1

substring ×1