Python:排序足球统计数据

2024-04-23 21:06:57 发布

您现在位置:Python中文网/ 问答频道 /正文

为了达到我的目的,我的目标是收集5个文件(5个赛季的足球),并将每个球员的统计数据相加,以形成一个历史上领先的名单,即传球、冲刺、接球。在

每个球员可能没有在每个赛季都打过球,所以我似乎找不到一种方法来列举每一个文件,如果找到球员就加上统计数据,如果没有,就直接打印那行。我发现有3个文件有特定的列(yds、td、fum),其中2个几乎相反。在

在不尝试用300行这样的非音阶来做这件事的情况下,我是否应该将两个不同的行合并并重新排列它们?在

我想我想有能力传递任何数量的文件,并得到统计领导人。唯一的问题是,我必须为每一个类别制定一个程序?在

我对编程绝对不是新手,但我对python还是相当陌生的,所以如果有任何帮助,我将不胜感激!!在

lines4 = [re.split("\s+", line4) for line4 in file4]
lines5 = file5.readlines()
for i,line4 in enumerate(lines4):
    name = line4[0:-7]
    name = " ".join(name)
    name = re.split(",", name)
    name = name[0]
    str(name)
    stats4 = line4[-6:-1]

    if re.search(r"^%s"%name, lines5[i]):
        line5 = re.split(r"\s+", lines5[i])
        stats5 = line5[-6:-1]
        yds = float(stats4[0]) + float(stats5[0])
        td = int(stats4[1]) + float(stats5[1])
        car = int(stats4[2]) + float(stats5[2])
        fmb = int(stats4[3]) + float(stats5[3])
        avg = float(stats4[4]) + float(stats5[4])

    else:
        yds = float(stats4[0])
        td = int(stats4[1])
        car = int(stats4[2])
        fmb = int(stats4[3])
        avg = float(stats4[4])

    if len(str(name)) < 8:
        newline = str(name) + "\t\t\t\t" + str(yds) + "\t\t" + str(td) + "\t\t" + str(car) + "\t\t" + str(fmb) + "\t\t" + str(avg) + "\n"
    elif len(str(name)) > 14:
        newline = str(name) + "\t\t\t" + str(yds) + "\t\t" + str(td) + "\t\t" + str(car) + "\t\t" + str(fmb) + "\t\t" + str(avg) + "\n"
    else:
        newline = str(name) + "\t\t\t" + str(yds) + "\t\t" + str(td) + "\t\t" + str(car) + "\t\t" + str(fmb) + "\t\t" + str(avg) + "\n"
    filettl.write(newline)

file4.close()
file5.close()
filettl.close()

样本输入:
文件4
49erswag,空纽约喷气机14 0 3 0 4.7
一个野兽游戏,空的新英格兰爱国者23 0 7 0 3.3
一个时髦的家伙2,空圣地亚哥充电器154 1 29 2 5.3
ACIDRUST,空纽约喷气机4 0 1 0 4
Aj dahitman,空亚特兰大猎鹰1898 19 227 2 8.4
奥尔迪兹尔,R新奥尔良圣徒45 0 10 0 4.5
Areis21,O达拉斯牛仔队58 0 13 2 4.5
43号,纽约喷气机214 1 48 1 4.5
Ayala2012xTCU,空纽约巨人队195 0 57 1 3.4
B O R Nx 25,新秀费城鹰31 0 13 1 2.4

文件5
有毒的塔兹,ECU巴尔的摩乌鸦307 4 44 7
AbNL Boss,R迈阿密海豚队509 4 174 2 2.9
阿菲舍尔,休斯顿德克萨斯州190 0 35 2 5.4
巴尔的摩乌鸦队AJ DA HITMAN 1283 19 228 6 5.6
allen5422,null Carolina Panthers 112 2 18 0 6.2
Allxdayxapx,R迈阿密海豚队264 1 76 2 3.5
阿尔法安尼克,R旧金山49ers 51 1 10 1 5.1
Aura Reflexx,ECU休斯顿德克萨斯215 1 40 0 5.4
唤醒大野兽,亚特兰大猎鹰队-5 0 4 1-1.3
AxDub24,。迈阿密海豚队-3 0 2 1-1.5
Ayala2012xTCU,匹兹堡钢铁厂568 4 173 1 3.3
Ballxxhawxx,R新英格兰爱国者221 1 47 2 4.7
霹雳拳007,纽约巨人队983 6 171 3 5.7


Tags: 文件namerenewlinefloatcarinttd