当前位置: 首页 > news >正文

python范围

用户图形界面-工资计算器

from tkinter import *def f():w = int(e1.get()) + int(e2.get()) - int(e3.get())wage.insert(0,w)root = Tk()
root.title("工资计算器")
Label(root, text="每月基本工资:").pack()
e1 = Entry(root)
e1.pack()
Label(root, text="补助工资:").pack()
e2 = Entry(root)
e2.pack()
Label(root, text="考勤扣款:").pack()
e3 = Entry(root)
e3.pack()
Button(root, text="计算", command=f).pack()
Label(root, text="实发工资:").pack()
wage=Entry(root)
wage.pack()
root.mainloop()
  1. 使用tk方法创建一个窗口类型root,并且给该窗口命名为工资计算器
  2. 用Label标签创建每月基本工资,补助工资,考勤扣款这几个标签,pack方法是将这几个标签放到窗口里
  3. 用Entry方法在root里创建输入框,并且将输入框创建在窗口里边
  4. 用Button方法创建一个按钮,与f方法绑定
  5. root.mainloop()显示窗口

政府工作报告-词云图

from PIL import Image
from wordcloud import WordCloud
import jieba
import numpy as np
#2、读取文本并分词
text = open("2023政府工作报告.txt","rb").read()
ss=" ".join(jieba.lcut(text))
mask=np.array(Image.open("ChinaMap.png"))
#3、配置词云参数,生成词云
wc = WordCloud(font_path="fonts/msyh.ttc",background_color = "white",max_words=300,mask =mask,max_font_size = 200,height=400,width=854,
stopwords={"的", "了", "是", "在", "和", "有", "一个", "与", "我", "我们", "你", "他", "她", "它", "这个", "那个", "对于","因为", "所以", "如果", "如何", "这样", "但", "只有", "而", "也", "更加", "去", "将", "可以", "大", "小", "非常","不仅", "更", "是的", "以及", "而且", "关于", "当", "能", "这些", "这些", "自己", "需要", "当时", "某些", "任何","本", "此", "更", "过", "一些", "同样", "两", "三", "四", "五", "十", "不", "多", "少", "起来", "之前", "之后"},
colormap="Reds",contour_width=8,contour_color="red")
wc.generate(ss)
#4、生成图片并显示
wc.to_image( )
wc.to_file("C:/Users/Administrator/Desktop/new.png")
  1. 首先,导包
  2. 打开政府工作报告文件,并且读取文本存入text
  3. 使用jieba分词,生成字符串并使用空格连接,存入ss
  4. mask是使用该图像作为模板
  5. 创建一个词云示例wc,使用Wordcloud方法,并且定义font,background_color,max_words,mask,stopwords
  6. colormap为红色映射,后面两个设置词云的宽度和颜色
  7. wc.generate(ss)生成词云
  8. 展示图像并保存

七日天气-爬虫

#日期、天气如何、温度、风向、风速
import requests
from bs4 import BeautifulSoup
import time
import xlsxwriter
# 请求网页
def page_request(url, ua):response = requests.get(url=url, headers=ua)html = response.content.decode('utf-8')return html
# 解析网页
def page_parse(html):soup = BeautifulSoup(html, 'lxml')date = soup.select('#\\37 d > ul > li> h1')wendu_high = soup.select('#\\37 d > ul > li > p.tem > span')wendu_low = soup.select('#\\37 d > ul > li > p.tem > i')tianqi = soup.select('#\\37 d > ul > li > p.wea')fenxiang = soup.select('#\\37 d > ul > li > p.win > em > span')fengsu = soup.select('#\\37 d > ul > li > p.win > i')workbook= xlsxwriter.Workbook('tianqi.xlsx')#添加工作表worksheet=workbook.add_worksheet('data')headers=['日期','温度','天气','风向','风速']for col_num,headers in enumerate(headers):worksheet.write(0,col_num,headers)for i in range(6):print(date[i].get_text()+'\t'+wendu_low[i].get_text()+'\t'+wendu_high[i].get_text()+'\t'+tianqi[i].get_text()+'\t'+fenxiang[i].get_text()+'\t'+fengsu[i].get_text())data=[date[i].get_text(),wendu_low[i].get_text()+'-'+wendu_high[i].get_text(),tianqi[i].get_text(),fenxiang[i].get_text(),fengsu[i].get_text()]for col_num,value in enumerate(data):worksheet.write(i+1,col_num,value)workbook.close()
if __name__ == "__main__":print('**************开始爬取七日天气**************')ua = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4421.5 Safari/537.36'}# 豆瓣电影Top250每页有25部电影,start就是每页电影的开头url = "https://www.weather.com.cn/weather/101180101.shtml"html = page_request(url=url, ua=ua)page_parse(html=html)#print('**************爬取完成**************')

分成三个部分

  1. 对网页的请求
  2. 解析网页,返回html
  3. 对html进行处理

详细叙述第三部分

  1. page_prase方法,首先soup = BeautifulSoup(html, 'lxml')将处理后的html保存在soup里边

  2. 然后使用soup.select方法将天气,最高最低温度,风速,风向,日期都创建变量进行保存

  3. 这一部分添加工作表并进行保存

    workbook= xlsxwriter.Workbook('tianqi.xlsx')#添加工作表
    worksheet=workbook.add_worksheet('data')
    headers=['日期','温度','天气','风向','风速']
    for col_num,headers in enumerate(headers):worksheet.write(0,col_num,headers)
    for i in range(6):print(date[i].get_text()+'\t'+wendu_low[i].get_text()+'\t'+wendu_high[i].get_text()+'\t'+tianqi[i].get_text()+'\t'+fenxiang[i].get_text()+'\t'+fengsu[i].get_text())data=[date[i].get_text(),wendu_low[i].get_text()+'-'+wendu_high[i].get_text(),tianqi[i].get_text(),fenxiang[i].get_text(),fengsu[i].get_text()]for col_num,value in enumerate(data):worksheet.write(i+1,col_num,value)
    
  4. 最后workbook.close()将该工作表进行保存

创建一个person类,输出hello

class Person:def __init__(self, name, age):self.name = nameself.age = agedef say_hello(self):print(f"Hello, my name is {self.name} and I am {self.age} years old.")if __name__=="__main__":person1 = Person("Alice", 25)person1.say_hello()

整数列表按奇偶排序,并且从小到大

def key(list1,list2):list3=[]list4=[]for i in list1:if i%2==0:list3.append(i)for i in list2:if i%2==0:list3.append(i)for i in list1:if i%2!=0:list4.append(i)for i in list2:if i%2!=0:list4.append(i)list3=sorted(list3)list4=sorted(list4)print(list4+list3)if __name__ == '__main__':list1=[1,5,8,2,22,9,7,20,25,24,99]list2=[111,112,113,114,115,116,117]key(list1,list2)

列表和元组的区别

列表(list)和元组(tuple)是 Python 中两种常用的数据结构,它们之间有以下几个主要区别:

1. 可变性

  • 列表(List)
    列表是可变的,可以修改元素的值、添加元素或删除元素。

    python复制代码lst = [1, 2, 3]
    lst[0] = 10  # 修改元素
    lst.append(4)  # 添加元素
    lst.remove(2)  # 删除元素
    print(lst)  # [10, 3, 4]
    
  • 元组(Tuple)
    元组是不可变的,一旦创建,不能修改其元素或结构。

    python复制代码tpl = (1, 2, 3)
    # tpl[0] = 10  # 会报错:TypeError: 'tuple' object does not support item assignment
    print(tpl)  # (1, 2, 3)
    

2. 性能

  • 元组因为不可变,所以在创建和访问时的性能通常比列表更高。
  • 如果需要处理大量不变的数据,使用元组更高效。

3. 用途

  • 列表更适合需要频繁修改数据的场景。
  • 元组更适合表示不可变的数据(如坐标、数据库记录)或作为函数返回多个值的容器。

4. 语法

  • 列表使用方括号

    []
    

    表示。

    python复制代码
    lst = [1, 2, 3]
    
  • 元组使用圆括号

    ()
    

    表示。如果元组只有一个元素,需加逗号。

    python复制代码tpl = (1, 2, 3)
    single_tpl = (1,)  # 单元素元组
    

异常+ZeroDivisionError

#解释python中的异常处理机制
# 1. 异常处理机制
# 在程序运行的过程中,可能会出现各种各样的异常,比如输入错误、文件操作失败等等。如果不对这些异常进行处理,程序将会终止运行,并给出错误提示。
# 为了避免程序终止运行,我们需要对可能出现的异常进行处理,并给出合适的提示信息。
# Python中提供了try...except...finally语句来处理异常。
# try语句用来包含可能出现异常的语句,except语句用来处理异常,finally语句用来执行一些清理工作,无论是否出现异常都会执行。
#演示代码如何捕获并处理ZeroDivisionError异常:try:a = 1 / 0
except ZeroDivisionError:print("division by zero!")# 运行上述代码,将会输出"division by zero!",说明程序正常运行,并捕获到了ZeroDivisionError异常。

画图

import numpy as np
import matplotlib.pyplot as plt
from matplotlib import gridspec# 定义函数 y = e^(2x) * cos(3πx + π/3)
def f(x):return np.exp(2 * x) * np.cos(3 * np.pi * x + np.pi / 3)# 设置 x 的范围
x_range = np.linspace(0, 10)# 创建图形,设置自定义布局
fig = plt.figure(figsize=(8, 12))# 使用 gridspec 设置布局
gs = gridspec.GridSpec(2, 1, height_ratios=[2, 1])  # 上方大图占2/3, 下方小图占1/3# 创建子图1:步长 0.2
ax1 = plt.subplot(gs[0])  # 上面的大图
x1 = np.arange(0, 10, 0.2)
y1 = f(x1)
ax1.plot(x1, y1, label='Step = 0.2', color='b', linestyle='-', marker='o')
ax1.set_title('Step Size = 0.2')
ax1.set_xlabel('x')
ax1.set_ylabel('y')
ax1.grid(True)
ax1.legend()# 创建子图2和子图3:分别为步长 0.5 和 0.7,放在底部
gs2 = gridspec.GridSpecFromSubplotSpec(1, 2, subplot_spec=gs[1])  # 在底部创建两个子图# 子图2:步长 0.5
ax2 = plt.subplot(gs2[0])
x2 = np.arange(0, 10, 0.5)
y2 = f(x2)
ax2.plot(x2, y2, label='Step = 0.5', color='g', linestyle='--', marker='x')
ax2.set_title('Step Size = 0.5')
ax2.set_xlabel('x')
ax2.set_ylabel('y')
ax2.grid(True)
ax2.legend()# 步长 0.7
ax3 = plt.subplot(gs2[1])
x3 = np.arange(0, 10, 0.7)
y3 = f(x3)
ax3.plot(x3, y3, label='Step = 0.7', color='r', linestyle='-.', marker='s')
ax3.set_title('Step Size = 0.7')
ax3.set_xlabel('x')
ax3.set_ylabel('y')
ax3.grid(True)
ax3.legend()# 调整布局
plt.tight_layout()# 显示图形
plt.show()

数据分析

import  pandas as pd
import matplotlib.pyplot as plt# 读取数据
df=pd.read_excel('sales.xlsx',parse_dates=['date'])
print(df.head())
# 按店铺分组并计算销售和利润的总和
store_sales=df.groupby("store")[["sales","profit"]].sum()
print(store_sales)# 绘制柱状图
# 筛选出销售额大于200的记录
high_sales=df[df["sales"]>200]
print(high_sales)
# 按类别分组并计算利润的平均值
category_profit=df.groupby("category")["profit"].mean()
print(category_profit)
# 绘制各店铺总销售额的柱状图
store_sales["sales"].plot(kind="bar",figsize=(10,6),color="skyblue")
plt.title("Total Sales by Store")
plt.xlabel("Store")
plt.ylabel("Total Sales")
plt.show()
  1. 读取数据
  2. 计算销售和利润的总和
  3. 绘制柱状图,筛选出销售额大于200的记录
  4. 计算
  5. 绘制

相关文章:

python范围

用户图形界面-工资计算器 from tkinter import *def f():w int(e1.get()) int(e2.get()) - int(e3.get())wage.insert(0,w)root Tk() root.title("工资计算器") Label(root, text"每月基本工资:").pack() e1 Entry(root) e1.pack() Label(…...

vulnhub靶场【Raven系列】之2 ,对于mysql udf提权的复习

前言 靶机:Raven-2,IP地址为192.168.10.9 攻击:kali,IP地址为192.168.10.2 都采用虚拟机,网卡为桥接模式 文章所用靶机来自vulnhub,可通过官网下载,或者通过链接:https://pan.quark.cn/s/a65…...

基于vite+vue3+mapbox-gl从零搭建一个项目

下面是基于 Vite、Vue 3 和 Mapbox GL 从零搭建一个项目的完整步骤,包括环境搭建、依赖安装、配置和代码示例。 1. 初始化项目 首先,使用 Vite 快速创建一个 Vue 3 项目: npm create vuelatest vue3-mapboxgl --template vue cd vue3-mapbo…...

向harbor中上传镜像(向harbor上传image)

向 Harbor 中上传镜像通常分为以下几个步骤: 1、登录 Harbor 2、构建镜像 3、标记镜像 4、推送镜像到 Harbor 仓库 1、登录 Harbor 首先,确保你已经能够访问 Harbor,并且已经注册了账户。如果还没有 Harbor 账户,你需要先注册一…...

【线性代数】行列式的性质

行列式性质定理讲义 一、行列式的基本性质 性质 1:行列互换 对于任意一个 n n n \times n nn 的方阵 A A A,其行列式 ∣ A ∣ |A| ∣A∣ 满足: ∣ A ∣ ∣ A T ∣ |A| |A^T| ∣A∣∣AT∣ 其中, A T A^T AT 是 A A A 的…...

智能家居企业如何通过设计师渠道打造第二曲线?

随着智能家居行业的迅速发展和消费者需求的不断升级,企业的营销策略也在不断变化。传统的B2C营销模式逐渐让位于更加精细化、定制化的B2B2C模式,其中设计师渠道的开发与合作,成为智能家居企业布局市场、提升品牌影响力的关键。 智能家居推广的…...

Unity3d 实时天气系统基于UniStorm插件和xx天气API实现(含源码)

前言 实时天气在Unity3d三维数字沙盘中的作用非常重要,它能够增强虚拟环境的真实感和互动性,实时天气数据的应用可以提供更为精准和直观的天气信息支持,如果真实的数据加上特效、声音和模型反馈会提高产品档次,提高真实感。 目前…...

年后找工作需要注意的事项

大家好!我是 [数擎 AI],一位热爱探索新技术的前端开发者,在这里分享前端和 Web3D、AI 技术的干货与实战经验。如果你对技术有热情,欢迎关注我的文章,我们一起成长、进步! 开发领域:前端开发 | A…...

模拟器多开窗口单IP与代理IP关系

模拟器多开窗口同IP背后出现的问题 在游戏世界中,模拟器多开窗口是玩家们提升体验的常见做法。通过在同一设备上开启多个模拟器窗口,玩家可以同时运营多个游戏账号,增加游戏的趣味性和效率。 一旦检测到一个IP地址下登录了过多的账号&#x…...

Android ScrollView嵌套X5WebView大片空白问题

scrollview嵌套后webview的高度不可控。留有大片空白。 注:官方不建议scrollview嵌套webview 最好让webview自身滚动 解决方案: act_news_detail_wv.setWebViewClient(new WebViewClient() {Overridepublic void onPageFinished(WebView webView, Str…...

Java Web开发进阶——WebSocket与实时通信

WebSocket 是一种在单个 TCP 连接上进行全双工通信的协议,广泛应用于需要实时数据交换的应用程序中。它能够实现服务器与客户端之间的双向通信,避免了传统 HTTP 请求/响应的延迟。结合 Spring Boot,开发实时通信应用变得更加高效与简便。 1. …...

zerotier搭建虚拟局域网,自建planet

基于该开源项目 自建planet节点,更快速,更安全 本教程依据docker-zerotier-planet 项目文档书写,并以linux(centos 7)和windows作为示例,需要其他系统配置方法,可移步项目文档 一. 前置资源 具有外网ip的服务器 后面…...

SQL面试题1:连续登陆问题

引言 场景介绍: 许多互联网平台为了提高用户的参与度和忠诚度,会推出各种连续登录奖励机制。例如,游戏平台会给连续登录的玩家发放游戏道具、金币等奖励;学习类 APP 会为连续登录学习的用户提供积分,积分可兑换课程或…...

2Spark Core

2Spark Core 1.RDD 详解1) 为什么要有 RDD?2) RDD 是什么?3) RDD 主要属性 2.RDD-API1) RDD 的创建方式2) RDD 的算子分类3) Transformation 转换算子4) Action 动作算子 3. RDD 的持久化/缓存4. RDD 容错机制 Checkpoint5. RDD 依赖关系1) 宽窄依赖2) 为什么要设计宽窄依赖 …...

linux之进程信号(初识信号,信号的产生)

目录 引入一、初识信号(信号预备知识)1.生活中的信号2.Linux中的信号3.信号进程得出的初步结论 二、信号的产生1.通过终端输入产生信号拓展: 硬件中断2.调用系统函数向进程发信号3.硬件异常产生信号4.软件条件产生信号拓展: 核心转储技术总结一下: 引入 一、初识信…...

基于nginx实现正向代理(linux版本)

介绍 在企业开发环境中,局域网内的设备通常需要通过正向代理服务器访问互联网。正向代理服务器充当中介,帮助客户端请求外部资源并返回结果。局域网内也就是俗称的内网,局域网外的互联网就是外网,在一些特殊场景内,例…...

【蓝牙】win11 笔记本电脑连接 hc-06

文章目录 前言步骤 前言 使用电脑通过蓝牙添加串口 步骤 设置 -> 蓝牙和其他设备 点击 显示更多设备 更多蓝牙设置 COM 端口 -> 添加 有可能出现卡顿,等待一会 传出 -> 浏览 点击添加 hc-06,如果没有则点击 再次搜索 确定 添加成…...

小程序组件 —— 31 事件系统 - 事件绑定和事件对象

小程序中绑定事件和网页开发中绑定事件几乎一致,只不过在小程序不能通过 on 的方式绑定事件,也没有 click 等事件,小程序中绑定事件使用 bind 方法,click 事件也需要使用 tap 事件来进行代替,绑定事件的方式有两种&…...

力扣cf补题-1【算法学习day.94】

前言 ###我做这类文章一个重要的目的还是给正在学习的大家提供方向(例如想要掌握基础用法,该刷哪些题?建议灵神的题单和代码随想录)和记录自己的学习过程,我的解析也不会做的非常详细,只会提供思路和一些关…...

系统学习算法:专题四 前缀和

题目一: 算法原理: 这道题是一维前缀和的模板题,通过这道题我们可以了解什么是前缀和 题意很简单,就是先输入数组个数和查询次数,然后将数组的值放进数组,每次查询给2个数,第一个是起点&#x…...

java 迪米特法则,原理、思想、工作流程、实现细节、稳定性、优缺点、应用场景等

迪米特法则(Law of Demeter,LoD),也被称为“最少知识原则”,是一种指导面向对象设计的原则,旨在减少对象之间的耦合度。以下是对迪米特法则的详细解析。 1. 定义 迪米特法则指出:一个对象应该…...

vue项目引入阿里云svg资源图标

1:生成svg图标 登录阿里云官网 1.1 创建项目组 1.2 从阿里云网站上面获取喜欢的图标加入到已有的项目组 1.3 如果团队有自己的设计师,也可以让设计师上传自己的svg图标到阿里云指定的项目组; 使用的时候,把 资源包下载到本地项…...

存储过程和触发器

目录 1、存储过程 1.1 存储过程的概述 1.2 存储过程的类型 1. 系统存储过程 2. 本地存储过程 3. 临时存储过程 4. 扩展存储过程 1.3 T-SQL创建存储过程 1.4 T-SQL执行存储过程 1.5 T-SQL查看存储过程 1.6 T-SQL修改存储过程 1.7 T-SQL删除存储过程 2、触发器 2.1 …...

《拉依达的嵌入式\驱动面试宝典》—计算机网络篇(二)

《拉依达的嵌入式\驱动面试宝典》—计算机网络篇(二) 你好,我是拉依达。 感谢所有阅读关注我的同学支持,目前博客累计阅读 27w,关注1.5w人。其中博客《最全Linux驱动开发全流程详细解析(持续更新)-CSDN博客》已经是 Linux驱动 相关内容搜索的推荐首位,感谢大家支持。 《…...

【深度学习实战】kaggle 自动驾驶的假场景分类

本次分享我在kaggle中参与竞赛的历程,这个版本是我的第一版,使用的是vgg。欢迎大家进行建议和交流。 概述 判断自动驾驶场景是真是假,训练神经网络或使用任何算法来分类驾驶场景的图像是真实的还是虚假的。 图像采用 RGB 格式并以 JPEG 格式…...

Spring Boot 和微服务:快速入门指南

💖 欢迎来到我的博客! 非常高兴能在这里与您相遇。在这里,您不仅能获得有趣的技术分享,还能感受到轻松愉快的氛围。无论您是编程新手,还是资深开发者,都能在这里找到属于您的知识宝藏,学习和成长…...

qt QPainter setViewport setWindow viewport window

使用qt版本5.15.2 引入viewport和window目的是用于实现QPainter画出来的内容随着窗体伸缩与不伸缩两种情况,以及让QPainter在widget上指定的区域(viewport)进行绘制/渲染(分别对应下方demo1,demo2,demo3)。 setViewpo…...

网络安全面试题汇总(个人经验)

1.谈一下SQL主从备份原理? 答:主将数据变更写入自己的二进制log,从主动去主那里去拉二进制log并写入自己的二进制log,从而自己数据库依据二进制log内容做相应变更。主写从读 2.linux系统中的计划任务crontab配置文件中的五个星星分别代表什么&#xff…...

【网络云SRE运维开发】2025第3周-每日【2025/01/14】小测-【第13章ospf路由协议】理论和实操

文章目录 选择题(10道)理论题(5道)实操题(5道) 【网络云SRE运维开发】2025第3周-每日【2025/01/14】小测-【第12章ospf路由协议】理论和实操 选择题(10道) 在OSPF协议中&#xff0c…...

FreeType 介绍及 C# 示例

FreeType 是一个开源的字体渲染引擎,用于将字体文件(如 TrueType、OpenType、Type 1 等)转换为位图或矢量图形。它广泛应用于操作系统、图形库、游戏引擎等领域,支持高质量的字体渲染和复杂的文本布局。 FreeType 的核心功能 字体…...