python资源
文章平均质量分 64
TEDxPY
微信公众号 TTTEED
展开
-
Python 实现Mac 屏幕截图
Python 实现Mac 屏幕截图前言pyscreenshotgithub地址Python 安装用例代码截图效果前言最近想做个小玩意,需要在mac端实现屏幕截图,搜了下网上中文资源都比较老旧,于是查了下,发现有些好用的Python库已经支持Mac 以及 Linux 了,特此记录pyscreenshotgithub地址github地址https://github.com/ponty/pyscreenshot/tree/3.0里面有安装和用例说明Python 安装pip install pyscr原创 2021-10-03 22:45:23 · 1658 阅读 · 0 评论 -
Python VTK 交互系统 1 交互模式入门
文章参考自《VTK 交互系统 1 交互模式入门》,按自己理解用 Python 实现相关功能如下:原文中只提及相关函数,为了能直接展示效果,我这引入一个箭头模型,想移除该模式下右键缩放功能,改成右键点击自定义输出“点击右键”信息,代码如下:import vtk# 自定义右键点击事件def right_click(obj, ev): print("点击右键")arrow = vtk.vtkArrowSource()# sphere = vtk.vtkSphereSource()ar原创 2020-08-17 19:29:01 · 1540 阅读 · 4 评论 -
Python 多线程锁
无锁多线程案例import threadingimport timenum = 100def fun_sub(): global num num2 = num time.sleep(0.001) num = num2 - 1if __name__ == '__main__': print('开始测试同步锁 at %s' % time.ctime()) thread_list = [] for thread in range(100)原创 2020-08-14 18:54:35 · 279 阅读 · 0 评论 -
Python 获取串口通信缓存大小
Python 调用串口通信时,一般都是通过 serial 模块先进行实例化:import serialted = serial.Serial(port='/dev/tty.wchusbserial1470', baudrate=115200)若想获取电脑端串口输入缓存以及输出缓存大小(bytes),可以通过该实例的 in_waiting (当前输入端缓存字节数) 和 out_waiting (当前输出端缓存字节数) 查看。若一次性发送大量请求并收到相应的返回信息,尚未进行读取,则可凭此来查看当前原创 2020-08-14 14:49:36 · 5104 阅读 · 0 评论 -
Python @property 基本用法和缺点
本文整理自《Effective Python 编写高质量 Python 代码的 59 个有效方法》第 31 条:用描述符来改写需要复用的 @property 方法@property 基本用法@property 修饰器,需要在类中先对某属性同名方法进行修饰器附加,再以 @属性名.setter 的修饰器对该方法进行改写:class Homework(object): def __init__(self): self._grade = 0 @property def原创 2020-08-13 10:45:27 · 488 阅读 · 0 评论 -
Python @property 实时计算数值属性进行属性重构
本文整理自《Effective Python 编写高质量 Python 代码的 59 个有效方法》第 30 条:考虑用 @property 来代替属性重构。首先定义个水桶类,需要向其中注入水才有限额可以消耗使用,采用时间模块控制操作顺序:from datetime import timedelta, datetimeclass Bucket(object): def __init__(self, period): self.period_delta = timedelta(原创 2020-08-12 12:09:59 · 302 阅读 · 0 评论 -
Python @property 用法
本文整理自《Effective Python 编写高质量 Python 代码的 59 个有效方法》第 29 条:用纯属性取代 get 和 set 方法。Python 类 public 属性首先,python 类中的 public 属性可以实现 setter 和 getter 等工具方法功能,动态修改、获取类中的属性:class Resistor(object): def __init__(self, ohms): self.ohms = ohms self.vo原创 2020-08-11 10:25:41 · 389 阅读 · 0 评论 -
PyQt5 QComboBox setMaxVisibleItems 不生效
QComboBox 中可以通过 setMaxCount(self, int) 来设置下拉框总条目数,以及 setMaxVisibleItems(self, int) 设置最大可显示的条目数、即一屏显示的条目是,多余的靠下拉继续展示但实际操作时发现 setMaxVisibleItems(self, int) 这个并不能生效,原因是该方法需要配合将 QComboBox 设置为可编辑模式:cb = QComboBox(self)# 设定最大条目个数cb.setMaxCount(5)# 设置最大显示个数原创 2020-08-05 17:53:23 · 1065 阅读 · 0 评论 -
python3 自动打开浏览器搜索
import webbrowserfrom urllib.parse import quotedef search_word(text): new_text =quote(text) url = 'http://www.baidu.com/s?wd=%s' % new_text webbrowser.open(url)target = "test 中国"search_word(target)注:url 链接只能包含ASCII字符,如果目标链接中有中文等非 ASCI原创 2020-08-05 16:40:19 · 992 阅读 · 0 评论 -
python 类的 public protected private 属性
本文整理自《Effective Python 编写高质量 Python 代码的 59 个有效方法》第 27 条:多用 public 属性,少用 private 属性三种属性python 类的成员变量中按可见度可划分为 public、protected 以及 private 属性class MyObject(object): def __init__(self): self.public_field = 5 self._protect_filed = 8原创 2020-08-05 10:44:50 · 2114 阅读 · 2 评论 -
Python mix-in 组件简介
整理自《Effective Python 编写高质量 Python 代码的 59 个有效方法》第 26 条,只在使用 Mix-in 组件制作工具类时进行多重继承mix-in 定义mix-in 是一种小型的类,它只定义了其他类可能需要提供的一套附加方法,而不定义自己的实例属性,此外,它也不要求使用者调用自己的 __init__ 构造器要点能用 mix-in 组件实现的效果,就不要用多重继承来做将各功能实现为可插拔的 mix-in 组件,然后令相关的类继承自己需要的那些组件,即可定制该类实例所原创 2020-08-04 10:06:59 · 552 阅读 · 0 评论 -
Python super 父类初始化
本文整理自《Effective Python 编写高质量 Python 代码的 59 个有效方法》第 25条:用 super 初始化父类简单的继承体系初始化父类的传统方式是在子类里用子类实例直接调用父类的 __init__ 方法class MyBaseClass(object): def __init__(self, value): self.value = valueclass MyChildClass(MyBaseClass): def __init__(se原创 2020-08-03 10:58:47 · 2102 阅读 · 0 评论 -
PyQt5 pyqtgraph 实时绘制数据
提到 GUI 绘图,大家可能第一反应是 OpenGL 和 Matplotlib,但其实基于 Qt 平台还有个功能强大的 pyqtgraph 绘图库,不仅支持丰富的图形种类,还能实时更新绘图数据并进行交互式操作。不同于网上其他文章或代码讲解,今天我们集中只关注实时绘制数据功能的实现。为了更精准学习该 pyqtgraph 模块功能,我们将参考官方给出的实例来边学边练。1. pyqtgraph 简介1.1 pyqtgraph 特点关于 pyqtgraph 与 Matplotlib 的对比,大致要点如下:原创 2020-08-01 19:51:34 · 24444 阅读 · 8 评论 -
PyQt5 作图之 pyqtgraph PlotWidget 代码结构拆解
关于 pyqtgraph 的介绍,网上一堆文章,但是涉及到其代码,尤其是 PlotWidget 应用的代码,要么附带的数据过于复杂不好摘,要么代码结构略复杂,对于刚接触的萌新很不友好,因此在这里自己拆解出一套 PlotWidget 代码供大家参考,每个代码都是独立可运行的,数据简单、主要观察代码结构。要点:独立的 PlotWidget 入门代码,QtDesigner 配合 PlotWidget 作图1. 最基础版 PlotWidget采用 QWidget 控件,在其上建立 PlotWidget 控件,原创 2020-08-01 15:41:13 · 10281 阅读 · 5 评论 -
《Effective Python》第 23 条笔记
assert 断言格式:# 格式 assert expression# 例如assert x==3# 若 x 值为 3,正常执行;若 x 不为 3,触发 AssertionError 异常# 等价于if not expression: raise AssertionError__call__通过名为 __call__ 的特殊方法,可以使类的实例能够像普通的 Python 函数那样得到调用class Ted(object): def __init__(self):原创 2020-07-29 20:03:57 · 146 阅读 · 0 评论 -
Python 由字典、元组到辅助类来维护程序的状态
本文整理自《Effective Python 编写高质量 Python 代码的 59 个有效方法》第 22 条:尽量用辅助类来维护程序的状态,而不要用字典和元组。字典维护简单的对象动态简单的例子,为学生建立成绩字典,记录姓名和多个分数,计算平均分,代码如下:class SimpleGradebook(object): def __init__(self): self._grades = dict() def add_student(self, name):原创 2020-07-29 16:55:59 · 277 阅读 · 0 评论 -
Python3 函数参数列表单独一个星号 * 的作用
本文整理自《Effective Python》第 21 条:用只能以关键字形式指定的参数来确保代码明晰Python 3 中可以定义一种只能以关键字形式来指定的参数,从而确保调用该函数的代码读起来会比较明确。这些参数必须以关键字的形式提供,而不能按位置提供。例如下面这个 safe_division 函数,带有两个只能以关键字形式来指定的参数,参数列表里的 * 星号,标志着位置参数的就此终结,之后的那些参数,都只能以关键字形式来指定。def safe_division(number, divisor, *原创 2020-07-29 09:34:08 · 3745 阅读 · 0 评论 -
Python 函数动态参数值设为 None 的意义
本文整理自《Effective Python 编写高质量 Python 代码的 59 个有效方法》第 20 条:用 None 和文档字符串来描述具有动态默认值的参数参数的默认值,只会在程序加载模块并读到本函数的定义时评估一次。对于{} 或 [ ] 等动态的值,可能会导致奇怪的行为。对于以动态值作为实际默认值的关键字参数来说,应该把形式上的默认值写为 None,并在函数的文档字符串里描述该默认值所对应的实际行为。例1例如:from time import *from datetime import原创 2020-07-28 15:39:21 · 9868 阅读 · 1 评论 -
Python *args 用法笔记
整理自《Effective Python 编写高质量 Python 代码的 59 个有效方法》第 18 条。1. 定义、用法在 def 语句中使用 *args,即可令函数接受数量可变的位置参数。比如确定一个函数接收 message 信息参数和 values 值参数,但不确定 values 有几个值,解决方法可以把 values 定义成列表,有数据就塞入列表,无数据就空列表,得到如下函数代码:def log(message,values): if not values: pri原创 2020-07-25 10:22:15 · 16271 阅读 · 0 评论 -
Python enumerate 详解
enumerate 是什么首先单词 enumerate 美式音标 [ɪˈnuːməreɪt], vt. 列举;枚举;计算enumerate() 是 python 内置函数,可以直接使用,enumerate() 的作用就是按 序号(索引序列)+元素(值) 的形式将一个可迭代对象返回例如有个列表 [ “a”,“b”,“c”], 通过 enumerate() 可以直接获取到 (0,“a”)、(1,“b”)、(2,“c”) 序号搭配元素为什么要用 enumerate通常初学 Python 时,为了拿原创 2020-07-22 10:30:15 · 8765 阅读 · 0 评论 -
Python字符串中 百分号02x 是什么意思
首先该结构符合字符串格式化输出的形式:“%x%x%x” % (r,g,b)其中 %x 是十六进制整数其次 %02x 是对 %x 的进一步补充:% 作为格式化输出的格式符,可以用如下的方式进一步控制:%[(name)][flags][width].[precision]typecode(name)为命名;flags可以有+,-,’ ‘或0。+表示右对齐。-表示左对齐。’ '为一个空格...原创 2020-01-08 14:22:30 · 9765 阅读 · 0 评论 -
水泊梁山迎圣诞,Python 抽奖助好汉
标题党!水泊梁山迎毛线的圣诞?还 Python 抽奖助好汉?你来抽个我看看!——息怒息怒,是这样:下周我们公司的圣诞 Party 活动安排有抽奖环节,由于不方便采用手机抽奖,且目前选用的电脑端在线抽奖会出现卡顿情况,最近我就尝试着用 Python 实现抽奖功能。目前进展不错,也想分享给大家,由于涉及隐私嘛,做了番保密修改,将要展示的抽奖公司搬到了水泊梁山,助力 108 好汉进行抽奖。人家...原创 2019-12-15 15:37:17 · 2463 阅读 · 5 评论 -
如何实现域名访问服务器上 Django 搭建的 API 项目?
最近的目标是用 Python 来搭建一个可访问的热门网站热榜数据 API,目前已经实现了:本地用 Django 搭建知乎热榜 API将本地的 Django 项目部署到云服务器上,实现了通过 ip 获取 API 数据本篇是最后一步,要完善 API 数据的抓取和通过域名可以拿到 API 数据。要实现此目的:首先要用 nginx + uWSGI 来设置服务器上的 Django 项目和 We...原创 2019-12-08 02:43:36 · 2605 阅读 · 1 评论 -
从零部署 Django 项目至云服务器
过去半个月,成功实现了将 Python Django 搭建的 API 本地项目部署到阿里云服务器,留作之后的参考。因为是初次自学着购买云服务器、注册域名等,甚至也是自己独立去使用 Linux 系统,在整个部署过程中并未来得及做整理。现在功能基本实现,为了还原从零部署项目到云服务器的全过程,刚新下单了腾讯云服务器和新的域名用于演示整个部署流程。环境:电脑是 macOS 系统,云服务器选用 Cen...原创 2019-12-07 19:21:30 · 1472 阅读 · 0 评论 -
Django 搭建知乎热榜 API
本文环境:Mac 系统,Python 3.7准备工作准备工作主要包括:创建项目虚拟环境、更新 pip 以及安装 Django 模块。创建项目虚拟环境首先创建虚拟环境,新建项目文件夹 tedxapi,右键在该文件夹处打开命令行窗口/终端窗口python -m venv myenv这时项目文件夹内出现一个 myenv 文件夹,执行以下命令启动虚拟环境source myenv/bin/a...原创 2019-11-19 17:00:50 · 1048 阅读 · 0 评论 -
朋友圈抽奖九宫格
朋友圈抽奖九宫格设计思路准备素材PIL 图片处理细节处理代码下载最终效果后续更新最近在朋友圈看到个好玩的抽奖九宫格:随便点开一个:哈哈,笑出猪叫!这个玩法利用了朋友圈发长图会显示中间局部的设定,搞笑之余也为朋友圈广告营销贡献了新思路。制作图的过程也不复杂,长图对应部分设计好,最后整合到一起就 OK 了,就是一张张地重复操作略显麻烦。想到这,不禁嘴角一翘、微微一笑,用 Python 的 ...原创 2019-08-01 17:04:05 · 461 阅读 · 0 评论 -
Python点阵字玩转动态歌词
上一篇中,我们可以自定义输入汉字,然后用点阵字来展现,接下来我们挖掘下更有趣的玩法。想法来自于听歌时桌面动态歌词,我们的点阵字可以自定义输入识别,何不加载歌词文件随着歌曲播放动态显示呢?走起——Python实现动态歌词歌词lrc文件这个以前玩mp3的应该不陌生,就是配在歌曲mp3文件边上的那个后缀lrc文件。lrc是英文lyric即歌词的缩写。Lrc文件可以用文本编辑器直接打开,其内容...原创 2019-01-16 20:48:13 · 1019 阅读 · 1 评论 -
知乎热榜?微博热门?爬!
一直也没写过爬虫的代码,一来是接触练习的少,二来也对爬虫心存偏见:老有种做贼偷数据的感觉。最近在体验过爬虫的高效便捷后,觉得确实有必要多实践一下。其实我本身学爬虫没多久,远没到分享爬虫技术的水平。但公众号平台嘛,又不是课堂,分享点实战经验和思路,相互交流下心得,也是挺不错的。今天来分享下这两天写的入门级的爬取知乎热榜和微博热门数据的代码和思路。首先明确下爬虫、知乎热榜和微博热门这些概念。网...原创 2019-10-11 02:11:12 · 653 阅读 · 0 评论 -
用 Python 打造别样的国庆祝福
伟大的祖国,生日快乐!在这普天同庆的日子,我们不妨用 Python 打造几条别致的国庆祝福吧!1. 点阵字祝福手动输入祝福,根据汉字库中编码,将祝福语文字以点阵形式打印出来。例如:输入“国庆快乐!”后:细节可参考之前发过的文章:Python print 玩转点阵字代码及文件链接:https://github.com/pengfexue2/printPlay.git2. 微信好友头像...原创 2019-10-01 08:40:37 · 4879 阅读 · 0 评论 -
Python:变身超级赛亚人
Python:变身超级赛亚人思路金色头发添加头发电弧特效代码下载上周六搞了个修炼写轮眼,利用python代码定位眼球再贴图,有点太粗糙。今儿又周末,效果升级下,玩个变身超级赛亚人——预期是动态显示变身后的金色头发、光芒和周围附带的电弧,以下是最终效果:展示视频链接:https://v.qq.com/x/page/f1359rshz00.html视频中可以看到,金色头发可以根据面部大小进...原创 2019-08-01 10:33:03 · 1215 阅读 · 0 评论 -
Python 查看微信共同好友
Python 查看微信共同好友思路itchat好友信息处理记录信息回顾代码下载总有思路清奇的朋友存在,想实现查看微信共同好友:由于之前分享的代码有获取过微信好友头像,所以当时第一反应是通过itchat微信接口获取好友信息,比对两个人的好友信息列表就可以实现了。按理说这么简单的话,应该早有现成的代码了,然而并没有搜到,那正好,拿来练练手!先放最终结果图:思路首先通过itchat这个微信...原创 2019-08-01 10:06:14 · 1339 阅读 · 2 评论 -
用 Python 整理 Excel 表格
用 Python 整理 Excel 表格思路xlrd和xlsxwriter读取所有xls和xlsx表格数据处理实例回顾代码下载一直都是拿Python来玩,今天正经一回,解决下好友的需求:需求不复杂,读取文件夹中所有xls或xlsx表格文件,遍历每一张sheet单页,汇总所需要的数据生成新的xlsx表格。思路首要解决的就是xls和xlsx表格文件的读取问题。读取到数据后,对数据进行筛选重组...原创 2019-08-01 09:18:51 · 10647 阅读 · 2 评论 -
Python玩微信头像组字
Python玩微信头像组字思路itchat获取头像图片汉字转点阵头像图片拼接九宫格效果回顾代码最后上一篇,用Python实现了拿微信好友头像来拼接背景,融合成自己的新头像。再之前呢,我们也实现了点阵字的输出与展示。正好今天有位老哥过生日,我就把头像拼接和点阵字结合起来,搞了个头像成字的代码,请看微信朋友圈九宫格效果:其中,每个字都是16*16的点阵,点阵中每个点可以拆解为4个好友头像图片:...原创 2019-01-29 21:46:06 · 1364 阅读 · 0 评论 -
Python:我的眼里只有你
Python:我的眼里只有你效果图思路dlib裁剪处理眼球中贴图回顾代码下载最后昨天情人节,写了个表白的小代码,将女友照片进行缩放,自动贴到我照片眼球处,表达“我的眼里只有你”。女友喜欢刘昊然,我这颜值是在不咋地,拿昊然弟弟照片来展示效果:效果图注意看眼睛位置思路Python可以直接调用dlib库进行人脸识别,其中也包含了准度较高的眼部识别。利用dlib面部识别库定位照片中眼球位置,...原创 2019-02-15 10:24:44 · 492 阅读 · 3 评论 -
Python小玩意儿:头像集福
Python小玩意儿:头像集福效果图程序/代码设计思路获取头像头像集福效果图通过itchat接口下载微信好友头像,将头像图片组合成福字样式生成图片程序/代码先放资源:封装好的exe文件下载:百度网盘链接https://pan.baidu.com/s/1cIgF4rTYracNUYJ_clXy9w 提取码:i0kgGitHub代码及exe程序下载链接:https://github.co...原创 2019-02-01 11:25:22 · 596 阅读 · 0 评论 -
Python:有你们在的样子真好
Python:有你们在的样子真好感恩思路itchat获取头像图片裁剪拼接图像融合效果图回顾代码下载最后感恩2018走到了年尾,这一年经历如何、收获几多?很感激这一年来遇到的各路贵人、朋友,以及一直默默支持我的家人。今天,我想用Python来表达:有你们在的样子真好~以上是效果图,通过获取微信好友头像图片组成背景,与个人头像融合,生成新的头像图片思路利用开源的微信接口itchat,扫...原创 2019-01-26 12:27:20 · 334 阅读 · 0 评论 -
程序员Python学习指南
程序员Python学习指南请注意程序员学Python书籍,网站,教程(非交互性)评述(Reviews)资源交互工具和课程Python视频教程整理自:https://wiki.python.org/moin/BeginnersGuide/Programmers请注意由于这是维基页面,用户可以自定义编辑。因此你可以自由添加细节或者材料以方便其他Python用户。这里并不是广告页面,而是为了服务...原创 2019-01-10 10:03:13 · 1104 阅读 · 0 评论 -
Python print 玩转点阵字
Python print 玩转点阵字效果图点阵字HZK16字库实现单字单字代码命令行中效果pycharm编辑器中效果实现多字多字代码多字命令行效果pycharm编辑器多字效果最终成果吃鸡篇表白篇人生苦短篇新年祝福篇代码文件下载参考链接:求关注效果图学python3第一句大概率是 print(“hello world”) 吧,既然可以逐行逐个地输出字符,那么把字符组成汉字应该也不难吧?经过一番搜...原创 2019-01-15 15:01:57 · 5768 阅读 · 6 评论 -
零基础Python修炼笔记——整理自官方文档
零基础Python修炼笔记题外话“编外人员”学Python书籍交互课程中小学儿童学习教材和网站科学工作者教程视频工具后记题外话去年我自学Python的时候,自以为是零基础学习,用了两个月入门之后就搁置了,还被朋友说学得快、很厉害,颇为自得。但其实,真正的零基础指的是完全没编程经验的“编外人员”,像我这样大学时候被逼着修过编程课程的,两个月入门Python其实已经算有些渣了。好,收,让我们看看官...原创 2019-01-09 00:22:47 · 675 阅读 · 0 评论 -
Python 读取 PDF 信息插入 Word 文档
Python 读取 PDF 信息插入 Word 文档思路PDFMiner模块docx-mailmerge 模块回顾代码下载Hello,上个周末没能搞事情,被一个代码需求给绊住了:朋友在平时工作中会经常重复性地打开不同PDF文件,选取其中特定的几组信息复制粘贴到不同的Word文档中,完成一份PDF文件平均耗时15分钟,想试试Python代码能否帮忙。由于其涉及文件隐私,将需求简化如下:我这提供...原创 2019-08-01 11:23:37 · 483 阅读 · 0 评论