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

Python提取单变量内多列表数据,计算Blackjack游戏分数的均值、众数与频率

解决Blackjack游戏手牌分数统计问题

1. 提取各局游戏分数

你的CSV数据中,每局游戏的分数是每个子列表的最后一个元素,先提取这些分数并转换为整数类型:

import csv
from collections import Counter

# 读取CSV数据
with open("nathan_project_data.csv", "r") as f:
    reader = csv.reader(f)
    game_data = list(reader)

# 提取分数并转为整数
scores = []
for game in game_data:
    score = int(game[-1])
    scores.append(score)

print("提取的分数列表:", scores)

运行后会得到:提取的分数列表: [21, 17, 18, 18, 19]

2. 计算分数均值

mean_score = sum(scores) / len(scores)
print(f"分数均值: {mean_score}")

输出:分数均值: 18.6

3. 计算分数众数

利用Counter统计分数出现次数,找到出现最频繁的分数:

score_counter = Counter(scores)
most_common = score_counter.most_common(1)
mode_score = most_common[0][0]
mode_count = most_common[0][1]
print(f"分数众数: {mode_score},出现次数: {mode_count}")

输出:分数众数: 18,出现次数: 2

4. 计算分数频率

统计每个分数的出现频率(出现次数/总游戏局数):

total_games = len(scores)
print("分数频率统计:")
for score, count in score_counter.items():
    frequency = count / total_games
    print(f"分数{score}: 出现{count}次,频率{frequency:.2f}")

输出:

分数频率统计:
分数21: 出现1次,频率0.20
分数17: 出现1次,频率0.20
分数18: 出现2次,频率0.40
分数19: 出现1次,频率0.20

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.31 03:06:29