您好,登錄后才能下訂單哦!
這篇文章主要介紹“怎么用Python腳本制作天氣查詢功能”,在日常操作中,相信很多人在怎么用Python腳本制作天氣查詢功能問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對(duì)大家解答”怎么用Python腳本制作天氣查詢功能”的疑惑有所幫助!接下來,請(qǐng)跟著小編一起來學(xué)習(xí)吧!
獲取天氣的主要代碼如下:
# cityCode 替換為具體某一個(gè)城市的對(duì)應(yīng)編號(hào) # 1、發(fā)送請(qǐng)求,獲取數(shù)據(jù) url = f'http://wthrcdn.etouch.cn/weather_mini?citykey={cityCode}' res = requests.get(url) res.encoding = 'utf-8' res_json = res.json() # 2、數(shù)據(jù)格式化 data = res_json['data'] city = f"城市:{data['city']}\n" # 字符串格式化的一種方式 f"{}" 通過字典傳遞值 today = data['forecast'][0] date = f"日期:{today['date']}\n" # \n 換行 now = f"實(shí)時(shí)溫度:{data['wendu']}度\n" temperature = f"溫度:{today['high']} {today['low']}\n" fengxiang = f"風(fēng)向:{today['fengxiang']}\n" type = f"天氣:{today['type']}\n" tips = f"貼士:{data['ganmao']}\n" result = city + date + now + temperature + fengxiang + type + tips print(result)
1、使用Qt Designer繪制窗口,保存為ui文件
2、把ui文件轉(zhuǎn)為py文件
(1)在生成的ui文件目錄下,打開cmd
(2)輸入以下命令(注意替換名稱)
pyuic5 -o destination.py source.ui
3、信號(hào)與槽函數(shù)的連接
# 1、清空按鈕與對(duì)應(yīng)函數(shù)連接 clearBtn.clicked.connect(widget.clearResult) # 2、查詢按鈕與對(duì)應(yīng)函數(shù)連接 queryBtn.clicked.connect(widget.queryWeather)
4、調(diào)用主窗口類
import sys from PyQt5.QtWidgets import QApplication , QMainWindow from WeatherWin import Ui_widget import requests import json class MainWindow(QMainWindow ): def __init__(self, parent=None): super(MainWindow, self).__init__(parent) self.ui = Ui_widget() self.ui.setupUi(self) # 通過文本框傳入想要搜索的城市名稱:天津 cityName = self.ui.weatherComboBox.currentText() # 獲取天氣部分省略 # 在文本框顯示查詢結(jié)果 self.ui.resultText.setText(result) def clearResult(self): print('* clearResult ') self.ui.resultText.clear() if __name__=="__main__": app = QApplication(sys.argv) win = MainWindow() win.show() sys.exit(app.exec_())
到此,關(guān)于“怎么用Python腳本制作天氣查詢功能”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注億速云網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。