首页>>后端>>Python->统计有多少不同数字python?

统计有多少不同数字python?

时间:2023-12-11 本站 点击:0

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

用Python怎么统计一个列表的元素种类和各个种类的个数

举个例子吧,比如一个列表numbers=["cc","cc","ct","ct","ac"]。他的元素种类有3个("cc","ct","ac"),每个种类的个数分别为2,2,1

用python统计可以编写如下代码;

res

=

{}

for

i

in

numbers:

res[i]

=

res.get(i,

0)

+

1

print([k

for

k

in

res.keys()])

print([v

for

v

in

res.values()])

python如何用字典统计列表中不同元素个数

打开pycharm工具,新建python文件,打开文件并定义列表k,进行赋值

请点击输入图片描述

接着定义一个空字典j,作为装载列表中的元素和对应的次数

请点击输入图片描述

使用for...in语句遍历列表k,如果列表k中的元素出现一次,对应的次数加1,否则只展示一次

请点击输入图片描述

使用循环语句遍历字典j,并依次打印字典中的key和value

请点击输入图片描述

保存代码并运行python文件,查看控制台打印结果

请点击输入图片描述

6

再次修改列表中的元素,添加元素,然后再次运行查看打印结果

请点击输入图片描述

python中统计不同字符的个数

1、示例代码

def statisStr():

n = input("请输入字符串:")

a = b = c = d = 0

for i in n:

if ord('a') = ord(i) = ord('z') or ord('A') = ord(i) = ord('Z'):

a = a + 1

elif ord('0') = ord(i) = ord('9'):

b = b + 1

elif ord(i) == ord(' '):

c = c + 1

else:

d = d + 1

print("字母:{} 个,数字:{} 个,空格:{} 个,其他字符:{} 个".format(a, b, c, d))

statisStr()

2、示例结果

请输入字符串:ajdsjdhsjdh ajdshj 98989 @!#¥%……

字母:17 个,数字:5 个,空格:3 个,其他字符:8 个

python如何统计list有几个连续的数字

mylist = [1,1,0,1,1,1,0,0,0,0,1,1,1,1,0,1,0,11,0]

result = {}

tmp = None

for i in mylist:

        if not result.has_key(i):

        #新出现的值为1

                result[i] = {'tmpcount':1,'maxcount':1}

        else:

                if i == tmp :

                #同上一次相同,tmpcount数字加一,同时更新maxcount

                        result[tmp]['tmpcount'] = result[tmp]['tmpcount'] + 1

                        if result[tmp]['maxcount']  result[tmp]['tmpcount']:

                                result[tmp]['maxcount'] = result[tmp]['tmpcount']

                else:

                #如果不同,上次数字的tmpcount归零,这次的数字的tmpcount归一

                        result[i]['tmpcount'] = 1

                        result[tmp]['tmpcount'] =  0                  

        tmp = i

for j,k in result.items():

        print '数字' + str(j) + '出现的最大连续次数为' + str(k['maxcount'])

 试试这个,有点麻烦但应该可以解决这个问题

用Python怎么统计一个列表的元素种类和各个种类的个数?

统计一个列表中每一个元素的个数在Python里有两种实现方式,

第一种是新建一个dict,键是列表中的元素,值是统计的个数,然后遍历list。

items = ["cc","cc","ct","ct","ac"]

count = {}

for item in items:

    count[item] = count.get(item, 0) + 1

print(count)

#{'ac': 1, 'ct': 2, 'cc': 2}

之中用到了一个小技巧,当dict中不还没有统计过一个元素时,直接索引count[item]会报错,而使用get方法count.get(item, 0)能够设置索引不存在的键时返回0。

第二种是使用Python内置的函数。统计元素的个数是一种非常常见的操作,Python的collection包里已经有一个Counter的类,大致实现了上面的功能。

from collections import Counter

items = ["cc","cc","ct","ct","ac"]

count = Counter(items)

print(count)

#Counter({'ct': 2, 'cc': 2, 'ac': 1})

python用字典统计不同字符的个数

这里用到了字典基本的建立,value调用,键值对增加,value修改,以及items()函数。

编程实现

流程:文件遍历-除去空白——判断字典中有无该字符——有则Value加1,无则新建为1——按Value排序并返回

具体实现代码如下:

#统计txt文件中的字符频率

def countwords(txt):

stat = {}#建立字典存储存储字符和对应频率

for line in txt:

line = line.strip()

if len(line) == 0:

continue

for i in range(len(line)):

#判断有无该字符的键

if(line[i] in stat):

stat[line[i]]+=1

else:

stat[line[i]]=1

result=sorted(stat.items(),key = lambda x:x[1],reverse = True)#按value大小排序

return result

xyj = open('xyj.txt' ,'r',encoding = 'utf-8')#读文件

r=countwords(xyj)#调用函数

xyj.close

结语:以上就是首席CTO笔记为大家整理的关于统计有多少不同数字python的全部内容了,感谢您花时间阅读本站内容,希望对您有所帮助,更多关于统计有多少不同数字python的相关内容别忘了在本站进行查找喔。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:/Python/25164.html