python查找列表有多少个1(怎么用python查找列表中特定的)

导读:很多朋友问到关于python查找列表有多少个1的相关问题,本文首席CTO笔记就来为大家做个详细解答,供大家参考,希望对大家有所帮助!一起来看看吧!

python找出列表元素重复个数和重复值

输出列表元素重复个数

def get_element(data):

dic = {}

i = 0

while i len(data):

if data[i] in dic:

\"\"\"

循环查找列表元素,如果一个元素出现一次,value就等于1,多次出现,value就增加

\"\"\"

dic[data[i]] += 1

else:

dic[data[i]] = 1

i += 1

for j, k in dic.items():

if k 1:

print(\'data数组中重复的元素有%d,它的个数是%d个\'%(j,k))

print(dic)

my_list =[1,2,3,4,2,4,2,3,4,5,6,23,23,32]

get_element(my_list)

python 判断列表中每个元素有几个

比如你可以这样(用isinstance()函数来判断类型):

123456789intCount

=

#用来记录列表中的int元素个数listCount

=

#记录list元素个数a

=

[1,\'a\',2,[1,2]]for

i

in

a:

#遍历a

if

isinstance(i,int):

#判断i是不是int

intCount

+=

1

elif

isinstance(i,list):

#判断i是不是list

listCount

+=

1print(intCount,listCount)

结果是2

1,也就是有2个int元素,1个list元素。

这是一个思路,你可以根据需要添加判断的类型,比如要统计float类型,就可以再加个elif

isinstance(i,list)来进行统计。至于元素种类,对应的记录是0,就说明没有这个种类的元素,比如如果intCount是0,就说明列表中没有int元素。

如何统计python list中元素的个数及其位置

代码如下:

list1=[2,3,1,9,112,23,23,6,6,1,3,0,11,2,1,1]

L1=len(list1) #列表list1的长度

list2=list(set(list1)) #可以用set,直接去掉重复的元素

list2.sort(reverse=False) #将列表由小到大排序

L2=len(list2) #列表list2的长度

print(\'集合:\'+str(list1))

for m in range(L2):

X=set() #设定一个空的集合,用来存放这个元素的所在的位置

start=list1.index(list2[m])

for n in range(L1):

stop=L1

if list2[m] in tuple(list1)[start:stop]:

a=list1.index(list2[m],start,stop)

X.add(a)

start=start+1

print(\'元素:\'+str(list2[m])+\',一共有\'+str(len(X))+\'个,在列表位置集合为:\'+str(X))

结果如下:

集合:[2, 3, 1, 9, 112, 23, 23, 6, 6, 1, 3, 0, 11, 2, 1, 1]

元素:0,一共有1个,在列表位置集合为:{11}

元素:1,一共有4个,在列表位置集合为:{9, 2, 14, 15}

元素:2,一共有2个,在列表位置集合为:{0, 13}

元素:3,一共有2个,在列表位置集合为:{1, 10}

元素:6,一共有2个,在列表位置集合为:{8, 7}

元素:9,一共有1个,在列表位置集合为:{3}

元素:11,一共有1个,在列表位置集合为:{12}

元素:23,一共有2个,在列表位置集合为:{5, 6}

元素:112,一共有1个,在列表位置集合为:{4}

---------------------

作者:散仙黄晓烟

来源:CSDN

原文:

版权声明:本文为博主原创文章,转载请附上博文链接!

python查找列表有多少个1(怎么用python查找列表中特定的)  第1张

Python一个列表有很多的0和1,有什么办法能找到‘连续相同’的1和0的个数的最大值?

不用函数,一行语句即可。

将a并为字符串,如a=\'0011000010001\'。使用以下生成式即可解决:

len([a.find(\'0\'*i) for i in range(len(a)) if a.find(\'0\'*i)=0])-1

以上是求\'0\'的最大,求\'1\'的最大改下即可。

要是嫌改\'0\',\'1\'麻烦,直接用上map

list(map(lambda x:len([a.find(x*i) for i in range(len(a)) if a.find(x*i)=0])-1,[\'0\',\'1\']))

结语:以上就是首席CTO笔记为大家整理的关于python查找列表有多少个1的相关内容解答汇总了,希望对您有所帮助!如果解决了您的问题欢迎分享给更多关注此问题的朋友喔~

以上内容为新媒号(sinv.com.cn)为大家提供!新媒号,坚持更新大家所需的互联网后端知识。希望您喜欢!

版权申明:新媒号所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流,不声明或保证其内容的正确性,如发现本站有涉嫌抄袭侵权/违法违规的内容。请发送邮件至 k2#88.com(替换@) 举报,一经查实,本站将立刻删除。

(0)
上一篇 2023-09-23
下一篇 2023-09-23

相关推荐

发表回复

登录后才能评论