zoukankan      html  css  js  c++  java
  • 找出列表中重复的元素及个数

    方法一: 将数组转成集合,然后循环
    data = [1, 1, 2, 2, 2, 3, 3, 4, 4, 4, 4, 4, 5, 6, 7, 8, 8, 8, 8, 8, 8, 9]
    lis = set(data)
    for i in lis:
    if data.count(i) > 1:
    print('data数组中重复的元素是%d,它的个数是%d个' % (i, data.count(i)))

    方法二: 定义空字典,将value的值大于1的添加到空字典里,然后循环字典的key和value
    data = [1, 1, 2, 2, 2, 3, 3, 4, 4, 4, 4, 4, 5, 6, 7, 8, 8, 8, 8, 8, 8, 9]
    a = {}
    for i in data:
    if data.count(i) > 1:
    a[i] = data.count(i) # i是key,data.count(i)是value
    for j, k in a.items():
    print('data数组中重复的元素有%d,它的个数是%d个' % (j, k))

    方法三: 不用count方法,循环判断空字典里如果有key,就对该key的value加1,没有key就让该key的value等于1
    def get_element(data):
    dic = {}
    i = 0
    while i < len(data):
    if data[i] in dic:
    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))


    my_list = [1, 2, 2, 2, 2, 3, 3, 3, 4, 4, 4, 4]
    get_element(my_list)
  • 相关阅读:
    常见保护方式简介
    各种保护机制绕过手法
    ShellCode框架(Win32ASM编写)
    单例模式
    HTTP1.0、HTTP1.1、HTTP2.0的关系和区别
    java集合提供的排序算法
    Dubbox以及微服务
    进程栈帧
    java线程池
    Java多态的实现
  • 原文地址:https://www.cnblogs.com/laosun0204/p/11150200.html
Copyright © 2011-2022 走看看