假设列表lst_weather中存放了一周内每天的天气情况(包括最低气温、最高气温、天气状况、风力和空气质量等)。
lst_ weather=[“周一”, “16℃”, “26℃”,“多云”,“1级”,“优”],[ “周二” ,“17℃”, “27℃”,“晴”,“2级”,“优”],[ “周三”,“16℃”, “28℃”,“晴”,“3级”,“优”],[ “周四”,“16℃”, “25℃”,“阴”,“2级”,“良”],[ “周五”,“15℃”, “24℃”,“阴”,“2级”,“良”],[ “周六”, “15℃”, “25℃”,“晴”,“3级”,“优”],[ “周日”,“14℃”, “23℃”,“小雨”,“3级”,“良”]
试编写程序,统计以下数据:
(1)空气质量为优的天数。
(2)风力低于3级且最高气温不超过25C的天数。
(3)平均气温低于20C的天数。
ls_weather=[
["周一","16℃","26℃","多云","1级","优"],
["周二","17℃","27℃","晴","2级","优"],
["周三","16℃","28℃","晴","3级","优"],
["周四","16℃","25℃","阴","2级","良"],
["周五","15℃","24℃","阴","2级","良"],
["周六","15℃","25℃","晴","3级","优"],
["周日","14℃","23℃","小雨","3级","良"]
]
#进行词缀处理,把26℃处理成26、1级处理成1
for i in range(len(ls_weather)):
for j in range(1,3):
ls_weather[i][j]=ls_weather[i][j].replace("℃","")
ls_weather[i][4]=ls_weather[i][4].replace("级","")
print(ls_weather)#可查看处理后的列表
num1=[x[0] for x in ls_weather if x[5]=="优"]
print(num1)
num2=[x[0] for x in ls_weather if x[4]<'3' and x[2]<='25']
print(num2)
num3=[x[0] for x in ls_weather if (int(x[1])+int(x[2]))/2<20]
print(num3)
#筛选符合条件的天数
结果: