for site in aqdata["Data"]:
print(site["SiteName"], site["AQI"], site["PM25"])
# print("{}\t{}\t{}".format(site["SiteName"], site["AQI"], site["PM25"]))
for site in aqdata["Data"]:
if site["PM25"] == "" or site["PM25"] == "ND":
site["PM25"] = -1
else:
site["PM25"] = int(site["PM25"])
# print out the first 10 records for glimpse
for aq in aqdata["Data"]:
print(aq["SiteName"], aq["AQI"], aq["PM25"])
# for site in aqdata["Data"]:
print(len(aqdata["Data"]))
for i in range(len(aqdata["Data"])): # iteration
if aqdata['Data'][i]['PM25'] == "" or aqdata['Data'][i]['PM25'] == "ND":
aqdata['Data'][i]['PM25'] = -1
else:
aqdata['Data'][i]['PM25'] = int(aqdata['Data'][i]['PM25'])
# print(i, aqdata['Data'][i]['SiteName'])
# print out the frist 10 records for glimpse
for site in aqdata["Data"]:
print(site["SiteName"], site["AQI"], site["PM25"])
2.3.3 Method 3: Using index and item to iterate content of List
前面我們介紹到兩個版本,
for site in aqdata["Data"]:是用site來直接存取所有的資料項目,
for i in range(len(aqdata["Data"])):的做法則是用i作為index來提供存取原本的aqdata["Data"]。
print(type(enumerate(aqdata["Data"])))
for i, site in enumerate(aqdata["Data"]):
if site["PM25"] == "" or site["PM25"] == "ND":
site["PM25"] = -1
else:
site["PM25"] = int(site["PM25"])
for site in aqdata["Data"][:10]:
print(site["SiteName"], site["AQI"], site["PM25"])
degree = ['Good', 'Moderate', 'Unhealthy for Sensitive Groups', 'Unhealthy',\
'Very Unhealthy', 'Hazardous']
scaler = [50, 100, 150, 200, 300, 501]
for site in aqdata["Data"]:
if site['AQI'] != "":
for i, n in enumerate(scaler):
if int(site['AQI']) < n:
d = i
break
site["status"] = degree[d]
for site in aqdata["Data"]:
print(int(site['AQI']), site['SiteName'], site["status"])
49 富貴角 Good
50 萬里 Moderate
40 淡水 Good
47 林口 Good
60 三重 Moderate
...
51 中壢 Moderate
47 龍潭 Good
54 新竹 Moderate
52 湖口 Moderate
49 竹東 Good
...
82 新港 Moderate
84 朴子 Moderate
104 嘉義 Unhealthy for Sensitive Groups
84 新營 Moderate
106 善化 Unhealthy for Sensitive Groups
100 安南 Unhealthy for Sensitive Groups
...
145 大寮 Unhealthy for Sensitive Groups
128 林園 Unhealthy for Sensitive Groups
114 屏東 Unhealthy for Sensitive Groups
...
# finding the maximum value
alist = [5, 3, 2, 4, 1, 3, 2, 4, 7, 82, 19, 23, 42]
print(max(alist), min(alist))
# mina, maxa = 100, 0
mina, maxa = 999999, -99999
for a in alist:
if mina > a:
mina = a
if maxa < a:
maxa = a
# print maxa, a
print(mina, maxa)
print(aqdata["Data"][0].keys())
# Initialize a very small maximum value
max_AQI = -1
# Compare to see if any one larger than the maximum value
for site in aqdata["Data"]:
if int(site['AQI']) > max_AQI:
max_AQI = int(site['AQI'])
print("The maximum AQI value: ", max_AQI)
# Traverse all sites by for loop to see whose value equals to the maximum PM2.5 value
for site in aqdata["Data"]:
if int(site['AQI']) == max_AQI:
print(site['SiteName'], site['AQI'], site['PM25'], site['status'])