You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Python统计任务文件中用户的任务数量?(全局列表及Counter问题)

统计任务文件中用户的任务次数

我需要读取一个任务列表文件,每行第一个元素是用户名,已实现文件打开、数据提取,但无法统计每个用户的任务次数(出现次数即对应任务数)。现有代码如下:

user_global = []
def disp_stats():
    with open ("tasks.txt", "r", encoding='cp1252') as tu:
        for lines in tu:
            data_list = lines.strip("\n").split(", ")
            data_list = data_list[0] # 这是需要统计次数的用户名
            user_global.append(data_list)
            print(user_global)

尝试用Counter工具统计但未成功,以下是修正后的解决方案:

修正代码

from collections import Counter

def disp_stats():
    # 初始化Counter对象用于计数
    user_task_counts = Counter()
    
    with open("tasks.txt", "r", encoding='cp1252') as tu:
        for line in tu:
            # 去除换行符并按", "分割行数据,取第一个元素作为用户名
            username = line.strip().split(", ")[0]
            # 对该用户计数+1
            user_task_counts[username] += 1
    
    # 遍历输出每个用户的任务次数
    for user, task_num in user_task_counts.items():
        print(f"{user}: {task_num} 项任务")

关键说明

  1. 不需要全局列表user_global,直接在函数内用Counter维护计数,逻辑更简洁
  2. strip()默认会去除换行符和首尾空白,比手动指定strip("\n")更通用
  3. 遍历Counter的items()方法即可获取每个用户及其对应的任务次数

内容的提问来源于stack exchange,提问作者maccadies

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 23:45:59