第五次python作业
习题1:读入文件pmi_days.csv,完成以下操作:
1.统计质量等级对应的天数,例如:
优:5天
良:3天
中度污染:2天
2.找出PMI2.5的最大值和最小值,分别指出是哪一天。
1 import csv 2 fieldnames="pmi_days.csv" 3 good=0 4 bad=0 5 little=0 6 a=0 7 b=0 8 list = [] 9 list1= [] 10 with open(fieldnames,'r') as f: 11 reader = csv.reader(f) 12 fieldnames = next(reader) 13 csv_reader = csv.DictReader(f,fieldnames=fieldnames) 14 for row in csv_reader: 15 dict = {} 16 for key, value in row.items(): # row是循环遍历 17 dict[key] = value 18 list.append(int(dict.get("PM2.5"))) 19 list1.append(dict.get("日期")) 20 if dict['质量等级'] == "优": 21 good+= 1 22 if dict['质量等级'] == "良": 23 bad += 1 24 if dict['质量等级'] == "中度污染": 25 little += 1 26 for i in range(0,len(list)): 27 if list[i]==max(list): 28 a=list1[i] 29 if list[i]==min(list): 30 b=list1[i] 31 print("优:{}".format(good)) 32 print("良:{}".format(bad)) 33 print("中度污染:{}".format(little)) 34 print("PM2.5的最大值:{} 日期:{}".format(max(list),a )) 35 print("PM2.5的最小值:{} 日期:{}".format(min(list),b ))
习题2:读入文件1980-2018GDP.csv,完成以下操作:
1.按行输出每年GDP数据,表头列名如文件第1行所示。
1 import csv 2 filename = '1980-2018GDP.csv' 3 with open(filename, 'r') as f: 4 reader = csv.reader(f) 5 header = next(reader) 6 print(fieldnames) 7 for row in reader: 8 print(row)
  
2.将各年GDP数据转换成字典格式,以年份为keys,其它值为values(数据类型为列表方式),例如: { 2017:[827121.7,6.8%,60989] ........ } 3.遍历字典数据,求出GDP的最小值与最大值,并输出数据与对应的年份。
1 import csv 2 list=[] 3 list1=[] 4 array={} 5 yuan=[] 6 with open("1980-2018GDP.csv",'r') as f: 7 reader = csv.reader(f) 8 fieldnames = next(reader) 9 csv_reader = csv.DictReader(f,fieldnames=fieldnames) 10 for row in reader: 11 list.append(row) 12 with open("1980-2018GDP.csv", 'r') as f: 13 reader = csv.reader(f) 14 fieldnames = next(reader) 15 csv_reader = csv.DictReader(f, fieldnames=fieldnames) 16 for row in csv_reader: 17 dict={} 18 for key,value in row.items(): 19 dict[key] = value 20 if key == 'GDP(亿元)': 21 yuan.append(float(dict.get('GDP(亿元)'))) 22 dict.get('年份') 23 list1.append(int(dict.get('年份'))) 24 for i in range(0, len(list)): 25 array[list1[i]] = list[i][1:] 26 print(array)

3.遍历字典数据,求出GDP的最小值与最大值,并输出数据与对应的年份。
1 import csv 2 list1=[] 3 yuan=[] 4 a=0 5 b=0 6 with open("1980-2018GDP.csv", 'r') as f: 7 reader = csv.reader(f) 8 fieldnames = next(reader) 9 csv_reader = csv.DictReader(f, fieldnames=fieldnames) 10 for row in csv_reader: 11 dict={} 12 for key,value in row.items(): #row是循环遍历 13 dict[key] = value 14 if key == 'GDP(亿元)': 15 yuan.append(float(dict.get('GDP(亿元)'))) 16 dict.get('年份') 17 list1.append(int(dict.get('年份'))) 18 for i in range(0,len(yuan)): 19 if yuan[i]==max(yuan): 20 a=list1[i] 21 if yuan[i]==min(yuan): 22 b=list1[i] 23 print("GDP的最大值:{}".format(max(yuan), a)) 24 print("GDP的最小值:{}".format(min(yuan), b))

                    
                
                
            
        
浙公网安备 33010602011771号