吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1509|回复: 11
收起左侧

[Python 转载] 统计列表内元素出现的次数

  [复制链接]
lys76 发表于 2022-6-1 12:13
[Python] 纯文本查看 复制代码
my_list = ['西瓜', '苹果', '香蕉', '西瓜', '苹果', '梨子', '梨子', '梨子']

# 方法一:利用字典键值对
my_dict1 = {}
for i in my_list:
    if i in my_dict1:
        my_dict1[i] += 1
    else:
        my_dict1[i] = 1

print(my_dict1)

# 方法二:利用集合除重、列表元素统计
my_set = set(my_list)
my_dict2 = {}
for i in my_set:
    my_dict2[i] = my_list.count(i)
print(my_dict2)

# 方法三:利用字典get获取值
my_dict3 = {}
for i in my_list:
    my_dict3[i] = my_dict3.get(i, 0) + 1
print(my_dict3)

目前知道这三种不利用第三方的方法。

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
zaa025 + 1 + 1 本人小白一个,楼主有时间可以把成品软件打包一下么?

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| lys76 发表于 2022-6-3 21:26
本帖最后由 lys76 于 2022-6-3 21:32 编辑
zaa025 发表于 2022-6-3 03:08
楼主能帮忙写个数字统计软件么?  
13, 34 ,78,56, 03, 13 ,34, 13 ,29, 34, 78 ,65,236, 67 ...

[Python] 纯文本查看 复制代码
def func(args):
    my_list = args.split(',')
    my_dict = {}
    for i in my_list:
        my_dict[i] = my_dict.get(i, 0) + 1
    sorted_data = sorted(my_dict.items(), key=lambda x: x[1], reverse=True)
    return sorted_data


my_str = '13,34,78,56,03,13,34,13,29,34,78,65,236,679,236,679,145'
print(func(my_str))


屏幕截图 2022-06-03 213131.png
小航 发表于 2022-6-1 23:08
本帖最后由 小航 于 2022-6-1 23:10 编辑

[Python] 纯文本查看 复制代码
pd.DataFrame(['西瓜', '苹果', '香蕉', '西瓜', '苹果', '梨子', '梨子', '梨子']).value_counts()


[Asm] 纯文本查看 复制代码
from collections import Counter
Counter(['西瓜', '苹果', '香蕉', '西瓜', '苹果', '梨子', '梨子', '梨子'])
iawyxkdn8 发表于 2022-6-1 16:51
xfmiao 发表于 2022-6-1 18:37
import pandas as pd
my_list = ['西瓜', '苹果', '香蕉', '西瓜', '苹果', '梨子', '梨子', '梨子']
a=pd.DataFrame(my_list)
print (a.groupby(0).size().to_dict())
 楼主| lys76 发表于 2022-6-2 13:15
小航 发表于 2022-6-1 23:08
[mw_shl_code=python,true]pd.DataFrame(['西瓜', '苹果', '香蕉', '西瓜', '苹果', '梨子', '梨子', '梨子 ...

pandas 还没学习啊,看着是真的简单
zaa025 发表于 2022-6-3 03:08
楼主能帮忙写个数字统计软件么?  
13, 34 ,78,56, 03, 13 ,34, 13 ,29, 34, 78 ,65,236, 679, 236, 679, 145
按数字出现次数从大到小排序
34出现3次
13出现3次
236出现2次78出现2次
679出现2次
56出现1次
03出现1次
65出现1次
145出现1次
三滑稽甲苯 发表于 2022-6-3 10:13
只需要统计特定的一个元素的话可以使用list.count()
nicksean 发表于 2022-6-3 11:02
Excel Vba 处理也可以
zg2600 发表于 2022-6-3 11:53
易语言也能处理这个简单的问题
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-28 23:05

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表