我如何编写一个算法,在python中查找列表中某个数字的行数?
我如何编写一个算法,在python中查找列表中某个数字的行数 例如: 输入: 列表=[0,1,1,1,0,1,1] N=1 输出:我如何编写一个算法,在python中查找列表中某个数字的行数?,python,Python,我如何编写一个算法,在python中查找列表中某个数字的行数 例如: 输入: 列表=[0,1,1,1,0,1,1] N=1 输出: 3使用groupby对相同的项目进行分组,然后在项目等于N的组中找到lens的max: >>> from itertools import groupby >>> max(len(list(group)) for i, group in groupby([0, 1, 1, 1, 0, 1, 1]) if i == 1) 3 >
3使用
groupby
对相同的项目进行分组,然后在项目等于N
的组中找到len
s的max
:
>>> from itertools import groupby
>>> max(len(list(group)) for i, group in groupby([0, 1, 1, 1, 0, 1, 1]) if i == 1)
3
>>> max(len(list(group)) for i, group in groupby([0, 1, 1, 1, 0, 1, 1]) if i == 0)
1
这回答了你的问题吗?您似乎在寻找一行中
1
的最大计数,否则如何解释最后的两个额外1
值?你在寻找最大值吗?@MichaelButscher这是总数,不是一行。为了不浪费空间,你可以做一个列表,列出有多少个,你可以做sum(一组一个)
@Copperfield我不会称之为“浪费”,更像是“在速度和简单性上花费空间”。