range():for i in range(10),range(10)相當於一個List [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]。尚可指定要從哪個數開始累計起,例如:for i in range(2, 11)。也可以指定一次要跳幾個數,例如for i in range(1, 11, 2) 這樣的表示式就代表要從1列數到10,但是一次要跳兩個,所以range(1, 11, 2)實際上會是[1, 3, 5, 7, 9]。
## Use a list to store all AQI value
AQI_list = []
for site in aqdata['Data']:
AQI_list.append(int(site["AQI"]))
print(AQI_list)
print(sorted(AQI_list, reverse = True))
# print(AQI_list)
# print(sorted(AQI_list))
print(sorted(AQI_list, reverse = True))
for site in aqdata['Data']:
if int(site['AQI']) >= sorted(AQI_list, reverse = True)[9]:
print(site['SiteName'], site['AQI'], site['status'])
print(len(AQI_list)/4)
for site in aqdata['Data']:
if int(site['AQI']) >= sorted(AQI_list, reverse = True)[int(len(AQI_list)/4)]:
print(site['SiteName'], site['AQI'], site['status'])
pm_list = []
for site in aqdata["Data"]:
if site['PM25'] != "" or site['PM25'] != "ND":
pm_list.append(int(site['PM25']))
for i in range(len(pm_list)-1):
for j in range(i+1, len(pm_list)):
if pm_list[i] < pm_list[j]:
pm_list[i], pm_list[j] = pm_list[j], pm_list[i]
print(pm_list)
pm_list = []
site_list = []
site_dict = {}
for site in aqdata["Data"]:
if site['PM25'] != "" or site['PM25'] != "ND":
pm_list.append(int(site['PM25']))
site_list.append(site['SiteName'])
site_dict[site['SiteName']] = site
for i in range(len(pm_list)-1):
for j in range(i+1, len(pm_list)):
if pm_list[j] > pm_list[i]:
pm_list[i], pm_list[j] = pm_list[j], pm_list[i]
site_list[i], site_list[j] = site_list[j], site_list[i]
for i in range(int(len(pm_list)/4)):
print(site_list[i], pm_list[i], site_dict[site_list[i]]['AQI'], site_dict[site_list[i]]['status'])
print(pm_list)
from operator import itemgetter
newlist = sorted(list_to_be_sorted, key=itemgetter('name'))
Sorted by itemgetter
from operator import itemgetter
sortedlist = sorted(aqdata['Data'], key=itemgetter('AQI'), reverse = True)
for site in sortedlist[:10]:
print(site['SiteName'], site['AQI'], site['status'])
Sorted by lambda
sortedlist = sorted(aqdata['Data'], key=lambda k: k['AQI'], reverse = True)
for site in sortedlist[:10]:
print(site['SiteName'], site['AQI'], site['status'])