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

如何从CSV文件每行提取逗号分隔值并分类为新列表

解决方案

你已经成功将CSV数据读取到listOfCSV中,每行是包含3个元素的列表:日期、空格分隔的中奖号码、乘数。以下是将这三类数据分别归类到新列表的具体实现:

基础拆分:提取三类核心数据

初始化三个空列表,遍历每行数据并将对应元素添加到列表中:

import csv

with open('Lottery_Powerball_Winning_Numbers__Beginning_2010.csv', 'r') as readObj:
    heading = next(readObj)
    csvReader = csv.reader(readObj)
    listOfCSV = list(csvReader)

# 初始化存储三类数据的空列表
dates = []
number_groups = []
multipliers = []

# 遍历拆分数据
for row in listOfCSV:
    dates.append(row[0])
    number_groups.append(row[1])
    multipliers.append(row[2])

# 查看前5项验证结果
print("日期列表(前5项):", dates[:5])
print("号码组列表(前5项):", number_groups[:5])
print("乘数列表(前5项):", multipliers[:5])

进阶处理:拆分号码为单独数字

如果后续绘图需要分析单个号码的分布,可以将空格分隔的号码拆分为整数,再拆分白球和强力球:

import csv

with open('Lottery_Powerball_Winning_Numbers__Beginning_2010.csv', 'r') as readObj:
    heading = next(readObj)
    csvReader = csv.reader(readObj)
    listOfCSV = list(csvReader)

dates = []
white_balls = []
powerballs = []
multipliers = []

for row in listOfCSV:
    dates.append(row[0])
    # 将号码字符串转为整数列表,拆分白球(前5个)和强力球(最后1个)
    num_list = list(map(int, row[1].split()))
    white_balls.append(num_list[:5])
    powerballs.append(num_list[5])
    multipliers.append(int(row[2]))

# 查看前5项验证结果
print("白球列表(前5项):", white_balls[:5])
print("强力球列表(前5项):", powerballs[:5])

拆分后的列表可以直接用于后续图表绘制,比如统计强力球出现频率、乘数分布等场景。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 01:10:23