自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(40)
  • 资源 (1)
  • 收藏
  • 关注

原创 【pyqt5】文本框和下拉框的禁用

pytq5中文本框和下拉框控件的禁用

2022-10-21 14:40:11 1125 1

原创 【PyQt5】一行代码教你一件换头像

最近在做UI的时候碰到一个需求,客户希望能够快速的换头像,按照以前用PyQt设计的思路来看,需要以下几步:1.将图片导入PyQt5的资源管理器内2.将资源管理器的图片插入空间的样式表内,比如下图3.将UI文件转换为py文件,以及转换图片代码以上思路最大的好处是不牵扯软件之外的资源,软件运行过程中只要有一个exe的软件入口即可,但缺点也同样明显,修改比较麻烦,需要从UI界面替换文件实现更新。---------------------------------------------分割线-----

2022-05-26 22:10:05 748

原创 【PyQt5】换个思路解决tabWidget的切换问题

最近碰到一个UI的需求,客户需求是tabWidget在切换的时候,不是点上面的tab按钮,如下1位置所示,而是点击左侧的pushbutton按钮,第一次碰到这样 的需求,仔细考虑之后,觉得可以通过信号和槽函数的方式实现,具体思路如下:![在这里插入图片描述](https://img-blog.csdnimg.cn/bd180fc24cc64d2882280eb417d2acb4.png)1.做好UI2.设定槽函数,这里注意到tabwidget,里面有个参数是currentIndex,就利用这个参数来写

2022-05-22 22:01:12 3740 3

原创 【数据分析】Numpy学习笔记(一)

最近在学习数据分析,到了numpy的学习阶段,边学边整理分享自己的学习笔记,希望能对你也有所帮助!这次的学习笔记包括以下内容:1.数组的创建方式2.多维数组的简单操作3.数组的索引和切片操作4.布尔索引5.数组值的替换操作6.数组的形状操作7.数组的叠加8.数组的切割9.数组的转置10.浅拷贝和深拷贝11.文件操作的几种方式

2022-04-17 21:58:28 1482

原创 【python心得】用FPDF创建PDF文档,及解决中文输入问题

对python中的FPDF库进行了介绍

2022-02-13 21:39:28 4335 2

原创 【Python心得】教你一招,定制软件再也不担心被白嫖!

学习Python快两年了,给别人做定制也有一年多的时间了,有时赚到1000块的快乐,往往不如被白嫖了100块来的记忆深刻,可以说,也是吃亏吃多了,慢慢就长了记性!先说说自己的经历,开始给别人写代码的时候,多数都是要个结果,并不会直接要源代码,如果需要源代码,那也是在付清全款之后,所以自己一般都是转成exe格式的文件发给对方,测试没有问题之后再付钱,这样做,风险基本上都是在自己这里,但在开始几单非常顺利之后,自己也放松了警惕,直到某次一个5000的订单,客户拿了软件之后,就没有然后了。。。痛定思痛,自己.

2021-09-21 21:59:26 1523 12

原创 【PyQt5】教你一招,用timer计时器做个打地鼠的小游戏

最近在做项目的时候,需要对界面进行不断的刷新操作,在一定的时间内连续触发某个函数,按照之前Python里的思路,第一反应是用time函数,但实际的效果并不好,经常会卡住,后来尝试用pyqt5里自带的计时器,这个问题完美解决。做完项目顺边开了开脑洞,既然可以即时刷新,那么自然可以利用这一点设计个小游戏,比如打地鼠,废话不多说,先上效果!**(文末有素材和完整代码)**码字不易,喜欢请三联!不着急动手做,先来聊聊原理性的知识!一、关于Timer计时器PyQt5中自带的timer计时器,是一种固定间隔

2021-09-06 21:33:00 2769 3

原创 【PyQt5】教你一招,分分钟撸一个网易云音乐的UI界面

在使用PyQt5设计UI界面时,为了让控件看起来更美观,可以尝试给控件添加背景,通过不同的背景来达到更加美观的效果。 改变背景一般有两种方法,一种是在python代码中添加,另一种是在Qt designer设计UI时添加,两种方法都可以,个人更倾向于第二种方法,原因很简单,代码添加需要运行之后看到效果,然后再调整;而第二种方法,可以直接拖拉边框调整,相对更灵活和方便。 具体添加方法如下:1.添加资源。在Qt desi...

2021-07-30 23:12:36 4444 18

原创 【PyQt5】孩子要上小学了,写个软件做练口算吧!

孩子马上要上学了,出差路上顺手写个练习口算的程序跟大家分享下,如果家里有同款的宝宝,正好可以拿去,不谢!先说下自己的需求:1.基本的计算功能,本来想只写下加法就可以了,想了想顺手就把加减乘除都写了2.计算的范围可以通过界面修改,这样大概1-6年级都可以用了吧3.题目的数量可以设定4.正确错误可以进行统计和反馈5.如果不希望孩子用电脑,可以生成文件打印到纸上说完需求,聊下自己的思路1.设计UI在这里插入图片描述2.基本功能功能比较简单,所以就不每个点都陈述了,主要分享下几个点吧第一,

2021-02-24 10:36:51 613 2

原创 【python学习心得】Numpy数组相关操作(重置结构,叠加,转一维数组,切割和行列转置)

我们在使用Numpy过程中,经常会用到关于数组形状相关的一些操作,这里总结比较常用的5组操作,如下:1.reshape 与resize.两个方法都是关于数组结构重置的,但调用的方式不同,比如:import numpy as npa1 =np.random.randint(0,10,size=(4,5))a2 =a1.reshape(10,2) #reshape 调用a1.resize(10,2)如果我们结果进行打印,会发现是一样,但区别是采用reshape,我们需要一个参数接收返回值,但,但

2021-01-16 11:55:33 759

原创 【Python心得】解决PyQt5 UI更新同步问题

我们在使用Pyqt5制作UI过程中,通常的流程是:1.用Qt designer 设计好UI界面2.使用PyUIC将UI文件转换成py文件3.导入启动部分的代码但在实际使用过程中,我们经常会反复的调试UI界面,而每次重新生成py文件之后,如果我们在之前的同一个文件下编写代码,则会丢失这部分内容,为了解决这一点,利用python模块导入的思路,我们可以把UI生成的py文件作为一个模块,引用到新的文件中,在新的文件中只调用,关于槽函数等其他操作在新的文件中编写,这样就可以完美的解决代码重新生成的问题。自

2021-01-09 09:03:35 3184 1

原创 【python练习】Pyqt5 lineEdit输入后自动跳转

最近在软件定制过程中,碰到一个需求,在lineEdit输入完成后,客户希望自动跳转到下一个对话框,在常规的槽函数用,通常我们可以用tab或者回车进行操作,将焦点直接设置到下一个输入框就可以,但却无法实现自动跳转,比如下图所示,是可以直接跳转的,为了实现上面的需求,无意中发现可以textChange()方法过渡,也就是说每次输入框内容发生变化时,调用函数,只要达到输入完成的条件,就可以直接跳转到下一个输入框。比如我这次需求,输入框限定输入0-9十个数字,所以可以直接定义槽函数如下即可:self.line

2020-12-17 13:25:53 2673

原创 【python实例分析】docx模块-利用word样式表style简化代码

最近在做一个定制的时候,碰到了一个需求,需要用固定的格式输出到word中,第一反应就是用docx模块,但在实际应用中,碰到的问题是需要反复的更换样式,比如下面的例子:一段话中出现的多个不同的格式,字体不用,字号不同,间距不同,当然,我们可以通过代码进行设置,针对数量比较少的内容没有问题,但自己的需求是要批量输出,且格式较多,这样需要设置的代码就非常的多,且存在重复代码。面对这样的问题,我在无意中注意到写入文字两个方法,如下:doc.add_paragraph("要添加的文字")#添加段落parag

2020-12-17 12:10:10 1308 2

原创 【python实例】爬虫中HTML与中文的相互转化

我们在输入关键词进行爬取时,如果输入的是英文或者数字,通常都没有什么问题,但如果输入的是中文,因为编码的问题,通常会出现无法解码的错误。比如我们的关键词输入的是“风险”,但实际显示是KW后面的代码确实%B7%E7%CF%D5,所以如果我们想要进行中文的搜索,就需要对中文进行转换,通常需要用到urllib模块代码如下:import urllib.parse#Html代码中文转代码,和代码转中文ss1 ='%B7%E7%CF%D5'print(urllib.parse.unquote(ss1,

2020-10-17 16:32:01 853

原创 【Python实例分析】批量生成海报--自动添加姓名和二维码

最近参加了老男孩的一个python训练营,里面某项任务是要求在某个海报模板上批量添加姓名和二维码,生成类似下图的海报。图中我用红色方框标记的是需要修改的地方,先来聊下自己的思路:1.要进行图片操作,要用到pillow模块,可以直接进行文字的添加和图片的合成2.生成二维码可以用qrcode模块3.比较麻烦和没有头绪的是怎么去对文字定位,最后借助了PS,下文具体表述。第一步:因为自己会点PS,所以先对原图进行了修改,将二维码和姓名直接删掉,没有PS的小伙伴直接用手机上的软化也可以完成,之后保存为海

2020-10-12 15:57:20 4099 9

原创 【python小技巧】关于python中的字符对齐-ljust(),rjust(),center(),format()走一波

在我们需要输出内容的时候,为了页面的美观,常常需要进行格式化的输出,特别是对齐方式,最常用的对齐方法,或许是ljust(),rjust(),center()这三个吧。ljust():返回一个原字符串左对齐,并使用空格(或指定字符)填充至指定长度的新字符串。如果指定的长度小于原字符串的长度则返回原字符串rjust():类似左对齐,为右对齐方式center():类似左右对齐,为居中对齐语法如下:str.ljust(要填充的字符个数,要填充的字符)实例如下:text ='我是标题'print(te

2020-08-22 15:26:07 722

原创 【python小技巧】startwith和endwith的文本匹配技巧

当我们需要对文本的开头或者结尾进行文字匹配的时候,通常会用到startwith和endwith两个方法,运行结果返回True或者Flase,可以用于判断,但有时我们需要的不仅仅是布尔值的判断结果,还会需要更多的数据,下面以endwith为例,介绍下这两个方法的使用技巧!**语法**endswith()方法语法:str.endwith(str, beg=0,end=len(string));**参数str – 检测的字符串。strbeg – 可选参数用于设置字符串检测的起始位置。stre

2020-05-26 17:03:48 1578

原创 自学python三个月,我接到了第一个定制,分享几点“坑”,请小心避过~

写在前面:1.本文比较长,干货比较多2.适合跟我一样的新手小白3.大神别略过,求带准确的说,是去年下半年开始接触python,但是因为工作等种种原因,一直都只是用非常缓慢的速度自己在看书,直到今年疫情爆发,在家待了一个半月,才有时间每天花十几个小时看书、看视频,即使三月份复工之后,每天都要坚持学习4个小时以上,虽然现在还是小白的很,但是至少直到后面的路该怎么走,接下来我会以下几个方面分享自...

2020-05-04 22:03:25 1394

原创 【python小技巧】字典的值比较大小及字典的排序

我们在对字典进行操作时,比如要比较大小或者排序这些操作,对于字典的键是可以的,但无法对值进行直接操作,比如下面的字典,price={ 'apple':20.59, 'BERKSHIRE':280000, 'amazon':296, 'alibaba':365}假设某个字典中存储了一些股票的价格,我们要筛选出价格最高的或者最低的股票,我们可以找出最低的价格,比...

2020-04-23 22:27:09 12243

原创 【python小技巧】并发中的'lock'---模拟买票的数据延迟问题

场景:我们在买票过程中,通常第一步先查找还有多少余票,然后点击购买,购买后,余票的数量-1,实际情况中是会有多人同时买票,其实就是一个并发的过程,但这个过程中,因为并发的子进程在读取数据,修改回填的过程中,可能会因为出现的延迟,造成数据的错误,比如这个例子,我们可以模拟20个人同时买票,设计1张余票,代码如下:from multiprocessing import Processfrom mu...

2020-04-02 12:01:39 155

原创 【python小技巧】并发中的守护进程---应用于主进程代码执行完成后,子进程同时结束的场景

当我们使用并发编程时,主进程会随着子进程的结束而结束,但子进程却不会随着主进程的结束同时结束,比如下面的测试代码,from multiprocessing import Processimport timedef func(): while 1: time.sleep(0.5) print('我在运行')if __name__=='__main__...

2020-04-02 10:37:07 471

原创 【python】模拟淘宝的客服自动回复系统-socket,json,time模块的应用

最近在研究soctet模块的过程中,尝试做个小的练习,第一反应是做个类似qq或者微信的即时聊天,这个需求相对比较简单,采用UDP协议很快就可以实现,为了提高点难度,于是决定尝试模拟淘宝的自动回复功能,决定要实现以下几个功能:1.客户端输入问题,抓取关键词后自动回复2.关键词的回复,也就是话术的内容,放到txt文档中,可以根据固定的格式增删改查,比如在txt文档中增加或者减少内容,代码执行...

2020-03-27 11:33:52 4749 2

原创 【python小练习】彩票系列-大乐透

今天的彩票系列练习是体彩的大乐透,前几天分别做了3D福彩,双色球和七乐彩的练习,链接如下,仅供大家参考。【python小练习】彩票系列-福彩3D【python小练习】彩票系列-双色球【python小练习】彩票系列-七乐彩说实话,随着python的不断学习,越来越深刻的感受到编程的魅力,比如自己刚学会编程的时候,只会用列表,for循环去写代码,碰到彩票的问题,第一反应就是往列表里面去添加元素...

2020-03-26 10:46:38 2351

原创 【python小练习】彩票系列-七乐彩

今天是彩票系列练习3,之前两个是3D福彩和双色球的练习,大家可以参考:【python小练习】彩票系列-福彩3D【python小练习】彩票系列-双色球今天做下七乐彩的练习,从开奖规则上来看,从1-30中选择7个基本号码,剩下的额外选择1个当特别号。说下思路:1.生成1-30内的随机数,如果不在预定义的空列表中,就添加进去,直到达到指定数量为止。2.特别同样的思路,不过是跟基本号码去比较。...

2020-03-25 10:53:25 1013 1

原创 【python小练习】彩票系列-双色球

昨天写了福彩3D的代码,有兴趣的可以翻翻下面的链接。【python小练习】彩票系列-福彩3D今天写个双色球的吧,先说说思路。1.定义一个空列表red,从1-33中生成随机数,如果不在red中,就添加进去,while循环直到元素有6个停止。2.从1-16中生成随机蓝球3.用zfill格式化输出即可代码如下:import randomprint('*'*6+'福彩双色球'+'*'*6)...

2020-03-24 12:03:08 1439

原创 【python小练习】彩票系列-福彩3D

之前写过一篇帖子怎么生成福彩3D的号码,并且产生中奖号码,并判断是否中奖,用的思路就是生成随机数,然后添加到列表中打印。具体的链接如下,供大家参考:python练习题】随机生成福彩3D号码,模拟开奖并判断是否中奖如果不进行判断,仅仅是输入结果的话,其实还有更简单的方法,就是用zfill()方法。zfill(width):指定字符串的长度。原字符串右对齐,前面填充0。width:要指定的字符...

2020-03-23 09:30:19 2862

原创 python利用win32com中的语音功能,给孩子做个计算题

疫情期间,孩子一直在家,快上小学了,试着让他练习下10以内的加减法,但问题在于孩子还不认字,于是决定利用python自带的语音功能,做个简单的交互。思路如下:1.生成2个10以内的随机数。2.生成运算3.判断结果4.每答对一题加分,最后输出代码比较简单,直接上了import randomimport win32com.clientdef speak(s): speaker...

2020-03-18 11:44:14 111

原创 python中的双下方法---带你从底层逻辑看python(__str__、__repr__、__del__、__call__)

我们在写代码的过程中,往往都是直接去取调用函数,比如len(),print()input()等等,事实上,这些方法或者函数在调用过程中,触发了很多内在的运行机制和底层逻辑,深入研究之后,我们能看到不一样的python,下面跟大家分享几个双下方法及他们的运行逻辑。双下方法:指的是带双下划线的方法,比如我们在类中非常常见的的__init__,今天我们要介绍的是__str__、repr、del、cal...

2020-03-17 12:32:53 312

原创 python中的反射---用字符串的调用函数和方法

我们在实际应用中会碰到这样的场景:写好代码之后,我们希望通过输入代码指令直接调用某个函数或者方法,通常的做法,我们会采用if语句来实现,a=input('<<<')if a == 要输入的指令代码块elif a==要输入的指令代码块....当需要的判断比较少的时候,这样做是没有问题的,但当需要判断的代码比较多的时候,代码就会变的非常长。这时我们可以利用反射来快速...

2020-03-17 10:39:52 2943 1

原创 【python心得】面向对象中你肯定会用到的的三个内置装饰器 @property @classmothod @staticmothod

当我们在python中用面向对象编程时,为了使代码更加简洁,或者实现一些特殊功能,往往会用到python内置的装饰器,其中,从常用的三个是@property @classmothod@staticmothod先来介绍@property,我们在类中调用对象的方法时,会使用对象.方法()的方式,当代码封装之后,如果我们不希望通过这样的方式调用,或者让调用的方式看起来像调用属性一样,例如采用对象...

2020-03-16 18:57:22 178

原创 python中类的封装--详解类中的私有变量、私有方法和静态属性

当程序完成的时候,有些数据和代码我们就不希望别人调用或者查看的时候,可以对程序进行封装,在python中主要就是进行变量或者方法的私有化。我们可以在变量或者方法前面加上__,两个下划线来进行私有化,使其变成私有变量或者私有方法,这样在外部就不可以直接调用了,类中私有化的内容由3个,分别是1)私有化变量2)私有化方法3)静态变量1.先说下私有化变量,比如下面的代码class Person...

2020-03-14 12:32:36 491

原创 疫情之后,我打算用python买彩票!(一)

受到疫情的影响,目前福利彩票还没有开始销售,无聊之下,自己陪自己写个程序模拟购买的过程,等到疫情过去,这就是我的彩票利器了,拿去不谢!之前写的3D福彩的模拟购买并查看是否中奖的代码,可以参考下面的链接:https://editor.csdn.net/md/?articleId=104487169我预想要达到的效果1.输入购买多少注,自动生成2.模拟生成中奖号码3.判断是否中奖,中了多少...

2020-03-11 08:40:55 865 1

原创 【python练习】生成不连续范围的随机数以及生成随机验证码

今天做练习的时候碰到这样一个需求:生成随机的5位验证码,以及后续的输入验证,相对后面的验证比较简单,就不赘述了。要求验证码由数字、字母组成,位置不固定。思路:1.由ascii码转换成数字和字母,用到chr()方法2.数字的ascii码范围是48-57,大写字母是65-90,小写字母是97-1223.用随机函数random生成的范围是单个的,所以考虑用2个随机函数嵌套,第一层生成1-...

2020-03-07 10:12:45 1567

原创 【python练习题】利用生成器实现对文件输入的监听及过滤

练习题:当文件保存时,对当前保存的内容进行抓取,比如函数运行时,先对所有的内容进行读取,文件写入新的内容,保存的同时,抓取新的内容,实现实时的监控!升级版:可仅对对敏感词进行抓取,比如字段中含有python,则进行抓取,否则不抓取思路:1.定义一个生成器函数,先读取文件内容2.如果读取的内容不为空,yield 当前值3.输入内容def tail(file): with ope...

2020-02-28 22:49:14 149 1

原创 函数装饰器的基本格式,带参数的装饰器,以及多个装饰器同时装饰一个函数

目录:1.装饰器的标准格式,及使用方法2.带参数的装饰器3.多个装饰器装饰同一个函数1.装饰器的标准格式,及使用方法我们在使用函数的过程中,有时在定义好一个函数之后,还想增加一些新的功能,在不改变原函数的情况下,可在原函数的前后增加新的代码。方法:在定义函数过程中,再定义一个新的函数,通过传参的方法进行嵌套实现功能。基本语法如下:def wrapper(func()): d...

2020-02-27 22:13:26 406

原创 【python练习题】利用列表对文件的格式化输出

很多数据在采集之后,数据内容往往很难直接阅读,比如下面的数据是以某种格式排布的一系列格式,我们在读取时,需要转换为可读的形式,比如转换后变成下面的样式思路:1.读取文本中的信息,然后拆分添加到空的列表中在这里插入代码片with open('log','r',encoding='utf-8') as l: for i in l.readlines(): li.ap...

2020-02-27 18:35:46 723

转载 判断输入的内容为浮点数

常规判断是否为数字的方法是用isdigit()方法直接判断就可以了,但是对于浮点数而言,结果是False,所以我们可以用isdigit()判断是否为整数,却无法判断是否为浮点数,否则会报错。利用这一点,参考下文https://www.zhihu.com/question/29906744做了修改,具体如下:def num(f): try: f=float(f) ...

2020-02-26 17:30:14 1628

原创 【python练习题】随机生成福彩3D号码,模拟开奖并判断是否中奖

今天学习完,随手练习了下函数的的定义,说说要求:输入要购买彩票的数量,模拟福彩3D的号码的生成,模拟彩票开奖情况,并判断是否中奖,中奖后中奖号码的数量,及中奖金额。说说思路:1.定义生成彩票的函数。随机生成3个0-9的数字,并添加到列表中,生成1个3D号码,再将这个号码添加到总的列表中。def lottery(num): list_sum=[] #定义总的彩票购买池 ...

2020-02-24 22:29:56 5490

原创 python isinstance()函数的用于列表嵌套的循环输出

要求:输出列表[“dd”,“sd”,“sadf”,[“as”,“sd”,“aa”]]中的每个元素,如果遇到列表,则输入嵌套列表中的元素,输出结果为ddsdsadfassdaa思路:利用for循环可以实现列表的遍历,但是嵌套的列表会整体输出。所以,考虑在遍历中加入if语句判断是否为列表,如果是,再次循环输出。判断是否为列表,可以用isinstacn(str,list)str:为要...

2020-02-18 00:20:40 702

原创 python中isdigit() isalpha()用于判断字符串的类型

要求1:统计某个字符串中的数字数量并输出,例如字符串为“adsfsd1adf23sdfa12”思路:遍历字符串,用isdigit()方法判断是否为数字,如果为数字,统计+1代码如下:str=input("请输入任意字符串")num=0 #统计基数for i in str: #遍历字符串 if i.isdigit(): #判断是否为数字 num+=1...

2020-02-18 00:19:24 1187 1

利用python将图片填充到excel

内容概要: 通过python识别图片每个像素的颜色,将颜色信息转换成16进制,用openpyxl新建excel文件,根据像素大小,填充到每个单元格内,实现图片填充到excel的全过程。 为了简化过程,利用pyqt5制作了简单的UI界面 用到的库: cv2,xlsxwriter,openpyxl,numpy,pandas,pyqt5. 注意事项: 1.图片目前识别JPG格式 2.将执行文件和图片放到同一文件夹内 3.不建议使用像素太高的图片,excel可能因为太大打不开

2022-04-04

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除