python统计不同玩家的玩过峡谷角色个数

01 初始数据

第1列是各位玩家,第2列是玩家所使用的角色,总共造了290条数据集

02 统计数据

以玩家的维度分类,统计峡谷角色“法师”、“刺客”、“战士”、“射手”、“辅助” 角色个数。

03 python代码

import csv

# 用csv标准库读取

csv_reader=csv.reader(open("/Users/juan.chen/Desktop/全球冠军/python/陈娟python学习/1.csv"))

for rowin csv_reader:

print(row)

# 数据集路径

datapath1='/Users/juan.chen/Desktop/全球冠军/python/陈娟python学习/1.csv'

datapath2='/Users/juan.chen/Desktop/全球冠军/python/陈娟python学习/2.csv'

def run_main():

resultlist = {}

c0 ={'法师'}# '法师'的可能取值

c1 ={'刺客'}# '刺客'的可能取值

c2 = {'战士'}# '战士'的可能取值

c3 = {'射手'}# '射手'的可能取值

c4 = {'辅助'}# '辅助'的可能取值

# 构造统计结果的数据结果 resultlist

# 每个元素是键值对,"键"是"玩家",'值'是列表结构

# 列表的第一个数是该玩家法师统计数,第二个数是该玩家刺客统计数,

with open(datapath1,'r')as file:

datas= csv.reader(file)

for i, datain enumerate(datas):

if i==0:

continue

name=data[0]

character=data[1]

if namenot in resultlist:# 判断键是否存在

resultlist[name]=[0,0,0,0,0,]# 字典里初始化键值

if characterin c0:

resultlist[name][0] +=1

elif characterin c1:

resultlist[name][1] +=1

elif characterin c2:

resultlist[name][2] +=1

elif characterin c3:

resultlist[name][3] +=1

elif characterin c4:

resultlist[name][4] +=1

else:

pass

# 将结果写入文件

with open(datapath2,'w')as file:

result=csv.writer(file,delimiter=',')

result.writerow(['玩家','法师','刺客','战士','射手','辅助'])# 写入表头

for k,vin list(resultlist.items()):# 写入统计结果

result.writerow([k,v[0],v[1],v[2],v[3],v[4]])

if __name__=='__main__':

run_main()


公众号:仙女婆婆的那些产品事

学习总结,欢迎关注交流

你可能感兴趣的:(python统计不同玩家的玩过峡谷角色个数)