Python题目,数据的提取与处理

以下25行数据是葡萄酒属性值. 用分号隔开了. 第一项为"固定酸度", 最后一项为"质量评级".
编程读取这25行数据(从这里copy,paste到输入区域).转换成实数的二维列表形式. 计算"固定酸度"的平均值,输出.
找出"质量评级"最高的若干行,将这些行数据(列表)输出.

7;0.27;0.36;20.7;0.045;45;170;1.001;3;0.45;8.8;6
6.3;0.3;0.34;1.6;0.049;14;132;0.994;3.3;0.49;9.5;6
8.1;0.28;0.4;6.9;0.05;30;97;0.9951;3.26;0.44;10.1;6
7.2;0.23;0.32;8.5;0.058;47;186;0.9956;3.19;0.4;9.9;6
7.2;0.23;0.32;8.5;0.058;47;186;0.9956;3.19;0.4;9.9;6
8.1;0.28;0.4;6.9;0.05;30;97;0.9951;3.26;0.44;10.1;6
6.2;0.32;0.16;7;0.045;30;136;0.9949;3.18;0.47;9.6;6
7;0.27;0.36;20.7;0.045;45;170;1.001;3;0.45;8.8;6
6.3;0.3;0.34;1.6;0.049;14;132;0.994;3.3;0.49;9.5;6
8.1;0.22;0.43;1.5;0.044;28;129;0.9938;3.22;0.45;11;6
8.1;0.27;0.41;1.45;0.033;11;63;0.9908;2.99;0.56;12;5
8.6;0.23;0.4;4.2;0.035;17;109;0.9947;3.14;0.53;9.7;5
7.9;0.18;0.37;1.2;0.04;16;75;0.992;3.18;0.63;10.8;5
6.6;0.16;0.4;1.5;0.044;48;143;0.9912;3.54;0.52;12.4;7
8.3;0.42;0.62;19.25;0.04;41;172;1.0002;2.98;0.67;9.7;5
6.6;0.17;0.38;1.5;0.032;28;112;0.9914;3.25;0.55;11.4;7
6.3;0.48;0.04;1.1;0.046;30;99;0.9928;3.24;0.36;9.6;6
6.2;0.66;0.48;1.2;0.029;29;75;0.9892;3.33;0.39;12.8;8
7.4;0.34;0.42;1.1;0.033;17;171;0.9917;3.12;0.53;11.3;6
6.5;0.31;0.14;7.5;0.044;34;133;0.9955;3.22;0.5;9.5;5
6.2;0.66;0.48;1.2;0.029;29;75;0.9892;3.33;0.39;12.8;8
6.4;0.31;0.38;2.9;0.038;19;102;0.9912;3.17;0.35;11;7
6.8;0.26;0.42;1.7;0.049;41;122;0.993;3.47;0.48;10.5;8
7.6;0.67;0.14;1.5;0.074;25;168;0.9937;3.05;0.51;9.3;5
6.6;0.27;0.41;1.3;0.052;16;142;0.9951;3.42;0.47;10;6

题主要的代码如下

img


data="""7;0.27;0.36;20.7;0.045;45;170;1.001;3;0.45;8.8;6
6.3;0.3;0.34;1.6;0.049;14;132;0.994;3.3;0.49;9.5;6
8.1;0.28;0.4;6.9;0.05;30;97;0.9951;3.26;0.44;10.1;6
7.2;0.23;0.32;8.5;0.058;47;186;0.9956;3.19;0.4;9.9;6
7.2;0.23;0.32;8.5;0.058;47;186;0.9956;3.19;0.4;9.9;6
8.1;0.28;0.4;6.9;0.05;30;97;0.9951;3.26;0.44;10.1;6
6.2;0.32;0.16;7;0.045;30;136;0.9949;3.18;0.47;9.6;6
7;0.27;0.36;20.7;0.045;45;170;1.001;3;0.45;8.8;6
6.3;0.3;0.34;1.6;0.049;14;132;0.994;3.3;0.49;9.5;6
8.1;0.22;0.43;1.5;0.044;28;129;0.9938;3.22;0.45;11;6
8.1;0.27;0.41;1.45;0.033;11;63;0.9908;2.99;0.56;12;5
8.6;0.23;0.4;4.2;0.035;17;109;0.9947;3.14;0.53;9.7;5
7.9;0.18;0.37;1.2;0.04;16;75;0.992;3.18;0.63;10.8;5
6.6;0.16;0.4;1.5;0.044;48;143;0.9912;3.54;0.52;12.4;7
8.3;0.42;0.62;19.25;0.04;41;172;1.0002;2.98;0.67;9.7;5
6.6;0.17;0.38;1.5;0.032;28;112;0.9914;3.25;0.55;11.4;7
6.3;0.48;0.04;1.1;0.046;30;99;0.9928;3.24;0.36;9.6;6
6.2;0.66;0.48;1.2;0.029;29;75;0.9892;3.33;0.39;12.8;8
7.4;0.34;0.42;1.1;0.033;17;171;0.9917;3.12;0.53;11.3;6
6.5;0.31;0.14;7.5;0.044;34;133;0.9955;3.22;0.5;9.5;5
6.2;0.66;0.48;1.2;0.029;29;75;0.9892;3.33;0.39;12.8;8
6.4;0.31;0.38;2.9;0.038;19;102;0.9912;3.17;0.35;11;7
6.8;0.26;0.42;1.7;0.049;41;122;0.993;3.47;0.48;10.5;8
7.6;0.67;0.14;1.5;0.074;25;168;0.9937;3.05;0.51;9.3;5
6.6;0.27;0.41;1.3;0.052;16;142;0.9951;3.42;0.47;10;6"""
list=data.split('\n')
l=len(list)
totalsd=0.0
maxzl=0.0
for i in range(l):
    list[i]=[float(x) for x in list[i].split(';')]
    totalsd+=list[i][0]
    if list[i][-1]>maxzl:
        maxzl=list[i][-1]


maxzllist=[]
for item in list:
    if item[-1]==maxzl:
        maxzllist.append(item)


print('固定酸度平均值:%s'%(totalsd/l))

print('质量评级最高')
print(maxzllist)

有帮助麻烦点下【采纳该答案】,谢谢~~