国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術(shù)文章
文章詳情頁

python小程序基于Jupyter實(shí)現(xiàn)天氣查詢的方法

瀏覽:70日期:2022-07-31 18:36:34

天氣查詢python小程序第0步:導(dǎo)入工具庫第一步:生成查詢天氣的url鏈接第二步:訪問url鏈接,解析服務(wù)器返回的json數(shù)據(jù),變成python的字典數(shù)據(jù)第三步:對字典進(jìn)行索引,獲取氣溫、風(fēng)速、風(fēng)向等天氣信息第四步:遍歷forecast列表中的五個(gè)元素,打印天氣信息完整Python代碼本案例是一個(gè)非常有趣的python小程序,調(diào)用網(wǎng)絡(luò)API查詢指定城市的天氣,并打印輸出天氣信息。

你將學(xué)到以下技能:

向網(wǎng)絡(luò)API發(fā)起請求,解析和處理服務(wù)器返回的json數(shù)據(jù),可以遷移到各種各樣的API中,如PM2.5查詢,道路擁堵查詢,自然災(zāi)害查詢等。python字典數(shù)據(jù)類型的常用操作以下的代碼運(yùn)行在jupyter notebook的開發(fā)環(huán)境中,這是python數(shù)據(jù)分析、機(jī)器學(xué)習(xí)、人工智能開發(fā)最常用的開發(fā)界面,因?yàn)榭梢苑浅7奖愕淖珜懖┛汀⒉迦雸D片和數(shù)學(xué)公式,并輸出代碼運(yùn)行的中間結(jié)果,強(qiáng)烈建議你學(xué)習(xí)如何使用jupyter notebook。

第0步:導(dǎo)入工具庫

import urllib.requestimport gzip

第一步:生成查詢天氣的url鏈接

city_name = ’上海’# 將城市的中文名字編碼成utf-8字符urllib.parse.quote(city_name)# 將編碼后的城市名拼接在原始鏈接的后面url = ’http://wthrcdn.etouch.cn/weather_mini?city=’ + urllib.parse.quote(city_name)

python小程序基于Jupyter實(shí)現(xiàn)天氣查詢的方法

第二步:訪問url鏈接,解析服務(wù)器返回的json數(shù)據(jù),變成python的字典數(shù)據(jù)

weather_data = urllib.request.urlopen(url).read()

# 訪問url鏈接,獲取字節(jié)串?dāng)?shù)據(jù)weather_data

python小程序基于Jupyter實(shí)現(xiàn)天氣查詢的方法

# 將字節(jié)串解碼為unicode編碼weather_data = gzip.decompress(weather_data)

weather_data

python小程序基于Jupyter實(shí)現(xiàn)天氣查詢的方法

# 將unicode編碼解碼為utf-8編碼,顯示中文weather_data = weather_data.decode(’utf-8’)

weather_data

python小程序基于Jupyter實(shí)現(xiàn)天氣查詢的方法

# 將字符串兩端的引號去掉,變成python中的字典數(shù)據(jù)weather_dict = eval(weather_data)

weather_dict

python小程序基于Jupyter實(shí)現(xiàn)天氣查詢的方法

type(weather_dict)

第三步:對字典進(jìn)行索引,獲取氣溫、風(fēng)速、風(fēng)向等天氣信息

weather_dict

python小程序基于Jupyter實(shí)現(xiàn)天氣查詢的方法

weather_dict[’data’][’yesterday’][’high’]

print(’您查詢的城市:’,weather_dict[’data’][’city’])print(’--------------------------’)print(’今天的天氣’)print(’溫度’,weather_dict[’data’][’wendu’])print(’感冒指數(shù)’,weather_dict[’data’][’ganmao’])print(’--------------------------’)print(’昨天的天氣’)print(’昨天:’,weather_dict[’data’][’yesterday’][’date’])print(’天氣:’,weather_dict[’data’][’yesterday’][’type’])print(’最高氣溫:’,weather_dict[’data’][’yesterday’][’high’])print(’最低氣溫:’,weather_dict[’data’][’yesterday’][’low’])print(’風(fēng)向:’,weather_dict[’data’][’yesterday’][’fx’])print(’風(fēng)力:’,weather_dict[’data’][’yesterday’][’fl’][-5:-3])print(’--------------------------’)

python小程序基于Jupyter實(shí)現(xiàn)天氣查詢的方法

第四步:遍歷forecast列表中的五個(gè)元素,打印天氣信息

weather_dict[‘data’][‘forecast’]是一個(gè)包含五個(gè)元素的列表,每一個(gè)元素都是一個(gè)字典。

weather_dict[’data’][’forecast’]

python小程序基于Jupyter實(shí)現(xiàn)天氣查詢的方法

for each in weather_dict[’data’][’forecast’]: print(’日期’,each[’date’]) print(’天氣’,each[’type’]) print(each[’high’]) print(each[’low’]) print(’風(fēng)向’,each[’fengxiang’]) print(’風(fēng)力:’,each[’fengli’][-5:-3]) print(’--------------------------’)

python小程序基于Jupyter實(shí)現(xiàn)天氣查詢的方法

完整Python代碼

# 導(dǎo)入工具庫import urllib.requestimport gzip## 第一步:生成查詢天氣的url鏈接city_name = input(’請輸入要查詢的城市名稱:’)# 將城市的中文名字編碼成utf-8字符urllib.parse.quote(city_name)# 生成完整url鏈接url = ’http://wthrcdn.etouch.cn/weather_mini?city=’+urllib.parse.quote(city_name)## 第二步:訪問url鏈接,解析服務(wù)器返回的json數(shù)據(jù),變成python的字典數(shù)據(jù)# 獲取服務(wù)器返回的json字節(jié)串?dāng)?shù)據(jù)weather_data = urllib.request.urlopen(url).read()# 將字節(jié)串?dāng)?shù)據(jù)解碼為unicode中的utf-8數(shù)據(jù)weather_data = gzip.decompress(weather_data).decode(’utf-8’)# 將json數(shù)據(jù)轉(zhuǎn)為python的字典數(shù)據(jù)weather_dict = eval(weather_data)if weather_dict.get(’desc’) == ’invilad-citykey’: print(’您輸入的城市未收錄’) # 第三步:對字典進(jìn)行索引,獲取氣溫、風(fēng)速、風(fēng)向等天氣信息print(’您查詢的城市:’,weather_dict[’data’][’city’])print(’--------------------------’)print(’今天的天氣’)print(’溫度’,weather_dict[’data’][’wendu’])print(’感冒指數(shù)’,weather_dict[’data’][’ganmao’])print(’--------------------------’)print(’昨天的天氣’)print(’昨天:’,weather_dict[’data’][’yesterday’][’date’])print(’天氣:’,weather_dict[’data’][’yesterday’][’type’])print(’最高氣溫:’,weather_dict[’data’][’yesterday’][’high’])print(’最低氣溫:’,weather_dict[’data’][’yesterday’][’low’])print(’風(fēng)向:’,weather_dict[’data’][’yesterday’][’fx’])print(’風(fēng)力:’,weather_dict[’data’][’yesterday’][’fl’][-5:-3])print(’--------------------------’)# 第四步:遍歷forecast列表中的五個(gè)元素,打印天氣信息for each in weather_dict[’data’][’forecast’]: print(’日期’,each[’date’]) print(’天氣’,each[’type’]) print(each[’high’]) print(each[’low’]) print(’風(fēng)向’,each[’fengxiang’]) print(’風(fēng)力:’,each[’fengli’][-5:-3]) print(’--------------------------’)

python小程序基于Jupyter實(shí)現(xiàn)天氣查詢的方法

到此這篇關(guān)于python小程序基于Jupyter實(shí)現(xiàn)天氣查詢的方法的文章就介紹到這了,更多相關(guān)python Jupyter 天氣查詢內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 中文在线视频观看 | 欧美精品三级在线 | 欧美片欧美日韩国产综合片 | 全免费a级毛片免费看视频免 | 亚洲日本韩国在线 | 在线黄网| 久久免费高清 | 成人午夜做爰视频免费看 | 经典日韩 | 日韩性片 | 欧美性色生活片免费播放 | 欧美久久久久久久久 | 久久中文字幕免费视频 | 欧洲色老头 | 国内精自品线一区91 | 久热精品男人的天堂在线视频 | yy6080福利午夜免费观看 | 热久久伊人 | 成人免费看www网址入口 | 日韩一级欧美一级毛片在线 | 亚洲国产韩国一区二区 | 99久久久久国产精品免费 | 东京一区二区三区高清视频 | 国产精品视频久久 | 无国产精品白浆是免费 | 亚洲久久在线观看 | 免费成年人在线视频 | 亚洲国产精品免费观看 | 国产一区三区二区中文在线 | 亚洲国产一区在线二区三区 | 欧美成人26uuu欧美毛片 | 国产欧美综合精品一区二区 | 99精品在线观看视频 | 国产小视频在线高清播放 | 99re在线视频精品 | freesex寂寞老妇hd | 国产欧美曰韩一区二区三区 | 美女视频黄视大全视频免费网址 | 中文字幕va一区二区三区 | 怡红院免费的全部视频国产a | 青青草国产一区二区三区 |