根据"中国天气"微博消息,今年下半年以来最强冷空气已经启程,未来的日子里将横扫我国中东部大部分地区,给多地都带来"断崖式"地降温,局部地区的降温幅度达到了12℃,小编穿着短袖、短裤地走在路上也是感到了阵阵地寒意

今天小编来利用PythonPyQt5一键生成未来五天内所在当地的天气预报,以便我们更好的来抵御寒冷,预防感冒。

效果显示

制作过程

首先引入需要用到的库

import sys
import requests
import jsonfrom PyQt5.QtWidgets import QApplication, QWidget, QMessageBox, QPushButton, QLineEdit, QLabel
from PyQt5.QtGui import QIcon

后端代码逻辑部分

我们先来处理后端的部分,通过requests库来抓取当地的天气情况,并且数据格式是以json格式返回

headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.70 Safari/537.36'
}city_name = "上海"
weather_url = 'http://wthrcdn.etouch.cn/weather_mini?city={}'.format(city_name)
city_response = requests.get(weather_url, headers=headers)
weather_dict = json.loads(city_response.text)
forecast_weather = weather_dict.get('data').get('forecast')

然后加入我们需要未来5天的天气情况,直接写一个for循环即可,如下

weather_report = []
for i in range(5):weather_report.append('日期:' + forecast_weather[i].get('date') + '\n'+ '天气状况:' + forecast_weather[i].get('type') + '\n'+ '最高温度:' + forecast_weather[i].get('high') + '\n'+ '最低温度:' + forecast_weather[i].get('low') + '\n'+ '风向:' + forecast_weather[i].get('fengxiang') + '\n')

前端页面的设计

前端页面的设计我们用的是PyQt5,在这里不做详细的介绍,小编会在后续中对PyQt5的使用再做专门的讲解,代码如下

class GetWeather(QWidget):def __init__(self):super().__init__()self.lb = QLabel(self)self.lb.setGeometry(70, 25, 80, 40)self.lb.setText('请输入城市:')self.textbox = QLineEdit(self)self.textbox.setGeometry(170, 30, 130, 30)self.findButton = QPushButton('查询', self)self.findButton.setGeometry(60, 85, 100, 40)self.quitButton = QPushButton('退出', self)self.quitButton.clicked.connect(self.close)self.findButton.clicked.connect(self.find_weather)self.quitButton.setGeometry(190, 85, 100, 40)self.setGeometry(500, 500, 350, 150)self.setWindowTitle('Icon')self.setWindowTitle('天气查询,目前仅支持单次查询')self.setWindowIcon(QIcon('751.png'))self.show()

页面显示的模样如下图

打包成可执行文件(exe)

最后我们用pyinstaller将整个脚本整合成一个可执行文件,鼠标的双击便可打开使用

pyinstaller main.py --onefile --name MyExecutable --windowed

最后出来的结果如下

出来的效果如下图所示

往期精彩回顾适合初学者入门人工智能的路线及资料下载机器学习及深度学习笔记等资料打印机器学习在线手册深度学习笔记专辑《统计学习方法》的代码复现专辑
AI基础下载黄海广老师《机器学习课程》视频课黄海广老师《机器学习课程》711页完整版课件

本站qq群554839127,加入微信群请扫码:

【Python】全国气温骤降,Python一键生成御寒指南,助你温暖过冬!!相关推荐

  1. Python自动化应用案例:一键生成工厂物料采购订单(精益办公案例之三)

    前言: 本文描述一个Excel办公自动化的实践示例:模拟生产企业在获取客户订单后,根据相关的数据和信息,通过编程的方式(Python语言),快速建立采购订单的过程.这种精益办公的方式将大幅精简在实际工 ...

  2. python编程生日快乐图片_Python 一键生成漂亮的生日快乐词云!

    前段时间写了几篇关于生成词云的文章,其中包括: Python 情人节超强技能 导出微信聊天记录生成词云 Python 绘制悼念的词云蜡烛 等等,但是这几篇文章的转化对象都必须是多词汇组成的,也就是说他 ...

  3. python全国计算机,加入 Python 科目,全国计算机等级考试迎来新调整

    近日,教育部考试中心宣布将对全国计算机等级考试(NCRE) 体系进行调整,从 2018 年 3 月开始,将实施 2018 版考试大纲,并按新体系开考各个考试级别,其中最大的调整是新增 Python 科 ...

  4. Python办公自动化|一键生成数据分析报告

    前两天逛知乎的时候看到这样一个提问,Python自动化办公能做那些有趣或者有用的事情? 看了一下这个提问,我想这可能是很多职场人面临的困惑,想把Python用到工作中来提升效率,却不知如何下手?Pyt ...

  5. 公众号 自动生成海报 python_用python一键生成一张全部微信好友的头像墙

    前言 用 python 代码写了一个一键生成合成微信好友头像的程序,效果如下: 不会写代码?没关系!只要你会使用电脑就 ok! 因为除了用代码方式生成外,还建了一个 .exe 的程序,在电脑点击运行就 ...

  6. 高手用Python一键生成微信好友头像墙

    用 python 代码写了一个一键生成合成微信好友头像的程序,效果如下: 不会写代码?没关系!只要你会使用电脑就 ok! 因为除了用代码方式生成外,还建了一个 .exe 的程序,在电脑点击运行就完事了 ...

  7. 用Python一键生成微信好友头像墙

    前言 用 python 代码写了一个一键生成合成微信好友头像的程序,效果如下: 不会写代码?没关系!只要你会使用电脑就 ok! 因为除了用代码方式生成外,还建了一个 .exe 的程序,在电脑点击运行就 ...

  8. 用Python一键生成微信个人专属数据报告,了解你的微信社交历史

    简介 你是否想过生成一份属于你的微信个人数据报告,了解你的微信社交历史.现在,我们基于python对微信好友进行全方位数据分析,包括:昵称.性别.年龄.地区.备注名.个性签名.头像.群聊和公众号等. ...

  9. python把一堆图片分成n份,用Python一键生成炫酷九宫格图片,火了朋友圈

    原标题:用Python一键生成炫酷九宫格图片,火了朋友圈 作为一个男同胞来说,为了给女朋友拍一张美美的照片,着实需要花费很大的时间和精力,不仅仅需要从众多的图片中精心挑选,而且还需要有着超强的图片精修 ...

最新文章

  1. 小米MIX 3如何刷成开发版启用Root超级权限
  2. Linux下源码安装软件
  3. 主流Java报表工具的比较
  4. python Sigmoid和Tanh 可视化
  5. Xcode全局替换内容,一键Replace
  6. 下拉列表select显示ng-options
  7. axis2+myeclipse6.5环境搭建
  8. fixed 定位 苹果手机输入框触发时内容全部隐藏
  9. PHP获得真实客户端的真实IP REMOTE_ADDR,HTTP_CLIENT_IP,HTTP_X_FORWARDED_FOR
  10. python不会英语不会数学怎么自学-文科女生学Python:学过初中数学和英语就能懂的编程逻辑...
  11. React和Redux的连接react-redux【转载】
  12. Phase2 Day18 SQL 约束
  13. 应变计测轴扭矩 计算
  14. 每日一记:2017.12.1
  15. CFSSL: 证书管理工具:2:创建CA私钥与CA证书
  16. 卫星系统算法课程设计 - 第一部分:城市时间窗口、间隙等
  17. 基于STM32超声波测距
  18. java partial class_easymock教程-partial class mocking
  19. 在64位ubuntu gcc 编译 -m32报错
  20. 面试必练:50道经典SQL练习

热门文章

  1. hdu 5093 二分匹配
  2. Apache URL重写的配置 及其 apache500错误
  3. Struts2 常量配置
  4. C#中MySQL语句带参数的模糊匹配问题
  5. 一个还不错的源码解析网站
  6. 【2040】反向输出序列
  7. 第三百八十九节,Django+Xadmin打造上线标准的在线教育平台—列表筛选结合分页...
  8. 统计学习导论 基于R应用——作业 3
  9. 个人日记2016年12月19日21:31:46
  10. mysql sql_safe_updates 分析