python - 如何获取元素在列表中出现的次数 Python

标签 python python-3.x list python-2.7 variables

我目前正在学习 python 并且遇到了一个问题。

我需要知道一个元素是否是列表的一部分,基本上是列表中出现的频率:

例如,假设我有这个列表列表:

A = [[1, 2, 4, 5], [2, 3, 5], [1, 2, 4, 5],
     [1, 2, 3, 5], [1, 2, 3, 4, 5], [2, 3, 4]]

假设我需要知道以下数字是否出现在列表中:[1, 2, 4]

如您所见,数字 [1, 2, 4] 出现在列表中的位置 A[0]A[2] ,和A[4](顺序无所谓,三个同时出现即可)。所以,出现的频率应该是3。

我已经尝试使用 any() 来查看是否有办法检查 x 是否是列表 A 的一部分

any(x == [1,2,4] for x in  A)

或者使用for循环,但是他们只检查x的每个个体是否是A的一部分,但我需要知道某个系列的元素是否出现。

for i in range(len(x)):
    count=0
    print("i",i)
    for j in range(len(x[i])):
        print("j",j)
        for k in range(len(A)):
            print("k",k)
            for l in range(len(A[k])):
                if x[i][j]==A[k][l]:
                    count+=1

有没有更有效的方法在 Python 中检查这个?

最佳答案

您可以使用 set 操作,因为顺序并不重要:

>>> print(sum(1 for x in A if {1, 2, 4} <= set(x)))
3

关于python - 如何获取元素在列表中出现的次数 Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64345523/

相关文章:

python - 是否可以使用 XGBoost 预测给定输入向量或一系列向量的整个输出向量?

python - 打印随机文本中的计数(单词出现次数)(Print hackerearth)

python - 将列表分成不均匀的组?

python - 如何从Python3中的变量/文本文件中删除b和\n? (类型错误)

C# - 当 Dog 是 Animal 的子类时,如何将 List<Dog> 转换为 List<Animal>?

python - 如何减少词典排序代码的运行时间[Python]

python - 从 __init__ 以外的方法/函数内部更改 tkinter 框架

python - scipy中fmin_cg的梯度函数

python - 用于在远程服务器上运行命令的交互式 Python 脚本

django - mod_wsgi (3.4-14)/Apache 2.4.12/Red Hat (6.7)/Django 1.8.2 卡在负载下