Python中的字符串格式化方法

2022-01-23
阅读 1 分钟
1.4k
三种方法说明Python三种格式化方法的文章已经很多了,下面列举比较详细的几篇:程序员客栈:Python的3种字符串格式化,做个超全对比!腾讯云:Python字符串三种格式化输出CSDN:python字符串格式化深入详解(四种方法)以上倒不是“茴字的八种写法”,作为python程序员的常用工具,有必要在合适中的场景下,做出最有效率的...
封面图

findimage 支持自动缩放了

2022-01-23
阅读 2 分钟
2.1k
表示是否自动缩放im_template来查找匹配,如果为None表示不缩放,如果需要缩放,那么传一个tuple:(min_scale, max_scale, step),其中min_scale和max_scale分别是缩放倍数的下限和上限,都是小数,min_scale介于0~1之间,max_scale大于1, step表示从min尝试到max之间的步长, 默认为0.1。
封面图

Python中的不可变集合

2022-01-17
阅读 2 分钟
1.9k
Python内置了一个不可变(immutable)集合对象:frozenset,顾名思义,这种集合对象,一旦创建了就不能修改。概念下面的代码演示了可变和不可变集合使用上的差别: {代码...} 如果运行这段代码,它的输出会是: {代码...} 可以看到frozenset实例根本没有remove方法,当然它也没有append方法,不能用index给元素赋值。作用...
封面图

图像匹配(大图中找小图)之新项目findimage

2022-01-16
阅读 2 分钟
5k
之前分析aircv源码的时候,还是有诸多不满,而且它也不更新维护了,提交PR也没人理,干脆做个新项目,目前已经提交PyPi库,可以用下面的命名安装:
封面图

越来越简单的数据类定义:named tuple

2022-01-14
阅读 2 分钟
1.5k
是不是很有趣?Point就像一个定义过x和y属性的类一样,可以直接创建实例,而所有实例都可以用.x,.y的形式访问其属性,这可比直接定义类要省事多了:
封面图

图像匹配(大图中找小图)之find_template源码解析续

2021-12-28
阅读 2 分钟
2.1k
今天把matchTemplate的返回值res再详细解释一下,这次把源图缩小一点,便于调试数据。源图:模板图:核心源码还是这段: {代码...} res = cv2.matchTemplate(im_source, im_search, method)这句执行之后,返回的res是什么样呢?我们用pycharm社区版的debug调试功能,选择“view as array”看一下:周围一片蓝色的都是负数,...
封面图

图像匹配(大图中找小图)之find_template源码解析

2021-12-25
阅读 3 分钟
6.3k
aircv是网易放出的小开源项目,应该也是现在做简单图像匹配被引用最多的项目了。上一篇做了如何使用aircv之find_template的描述,然而,它并不算是一个成熟的项目,里面的小坑不少,有待改进。今天先做个代码逻辑的解析。
封面图

图像匹配(大图中找小图)最简单方法:aircv之find_template

2021-12-24
阅读 2 分钟
8.9k
我的开源项目SimpleRPA里面,一直使用aircv的find_template方法来做图像匹配,最常见的场景就是从屏幕截图中,查找预先截好的小图,来确定下一步鼠标点击的位置:
封面图

创业技术团队如何分配工作

2021-12-21
阅读 2 分钟
1.6k
分配工作的关键原则是:“事事有人做,而不是人人有事做”。一家公司最好是有多少事,配多少人。然而事是快速动态变化的,尤其是互联网行业,业务变化极快,上周的紧急任务,本周就有可能被砍掉;人却不可能因为今天事儿少了就裁两个,明儿事儿多了再招一个——且不说招聘没有那么快,就算新人能迅速到位,他熟悉项目,融入...
封面图

Three.js 新旧版本创建几何对象差异

2021-12-16
阅读 1 分钟
4.8k
一开始还以为是模块导入问题,折腾了一阵才发现,THREE模块中竟然真的就没有Geometry!难道网上的代码是愚人节贴的?遇事不决问google,终于确认人家是升级了。新版的Three.js不再提供Geometry对象,代之以BufferGeometry,代码修改如下:
封面图

创业技术团队如何做计划

2021-12-14
阅读 2 分钟
1.1k
如何做计划,通常不是技术团队自己的问题,而是整个公司的问题。常见情况是,一家业务驱动的公司,技术团队是没有什么话语权的,大的需求计划由销售、运营或者管理层确定,技术团队只负责执行,有时候中间还隔着一层产品经理。这种情况下想制定严密周到的计划就是奢谈,可能连合理都做不到。
封面图

创业公司程序员招聘(2)——面试

2021-12-09
阅读 2 分钟
1k
海量选人之后,就要进入面试环节了。面试通过意味着候选人变成试用期员工,要进入团队,可能给团队带来助力、活力和新思想,也可能是阻碍、破坏和坏模式,所以千万别觉得差不多就先招进来试试!新人融入的成本是很高的,如果他/她最终无法胜任,不但会拖累工作进度,对整个团队都有负面影响。
封面图

创业公司程序员招聘(1)——规则和技巧

2021-12-06
阅读 3 分钟
1.8k
创业十年的公司结束了,技术团队的小伙伴们也各自找到了好工作,是时候认真总结一下以前的经验教训了。关于团队建设,我大概总结了以下几个方面:海量选人认真把关重视培养勇于淘汰今儿先聊聊创业公司招聘的规则和技巧,也就是海量选人。一般来说,大厂的待遇优厚,国企和外企工作稳定,福利高,通常一份JD(工作职位描...
封面图

Pandas 动态确定标题行

2021-10-12
阅读 1 分钟
3.7k
Pandas是用python语言编写的,超好用的数据处理工具,也提供了特别方便的excel读写功能,可以一句话读入excel文件中所有数据:
封面图

从Python源码注释,自动生成API文档

2021-10-12
阅读 2 分钟
7k
用python写了一个屏幕自动控制的开源小项目,需要编写文档,这可能是程序员最痛苦的工作了,哈哈。为了尽量减少工作量,API调用部分最好能直接用源码注释生成——这样至少不用写两遍了,而且注释离源码最近,相互对照写起来方便。
封面图

Kivy 选择文件对话框支持中文

2021-07-29
阅读 1 分钟
1.9k
这个问题其实跟Kivy中其他控件支持中文一样,都是字体的问题,而不是字符集的问题,但我看网上能搜到的答案,全都围着字符集打转,有些还煞有介事地回答说:给 FileChooserListView 增加 file_encodings: ["utf-8"] 属性就能解决

win32设置当前窗口——SetForegroundWindow,SetActiveWindow, or ShowWindow?

2021-07-27
阅读 1 分钟
6.6k
win32的函数众多,又比较底层,名字就不太好理解,比如这三个:SetForegroundWindow,SetActiveWindow, 和 ShowWindow,到底谁才能把指定窗口变成当前窗口呢?

Kivy 2.0的一个变化

2021-07-25
阅读 2 分钟
1.9k
这是个经典的Kivy报错,也非常诡异,完全不能理解——明明Label类的构造函数,可以接收多个参数么!即使调试进去,也看不出问题所在,只知道是调用父类的父类的(没看错,就是两级父类,指向WidgetBase)构造函数出错的。不过既然实例代码能用,问题肯定出在我补充的参数上,本来以为是哪个样式被废弃了,结果试来试去,发...

Python 获取与设置windows当前窗口

2021-07-19
阅读 2 分钟
10.4k
在Python做屏幕自动化的过程中,难免需要涉及对窗口的操作,理论上都可以用鼠标键盘+屏幕识别(对人的完全模拟)来实现,但具体做起来实在有点麻烦。如果不考虑跨平台的兼容性,那么引入win32gui库,可以省很多事。

Python 屏幕自动化,操控剪贴板在输入框中填写中文

2021-07-17
阅读 1 分钟
5k
使用pyautogui做屏幕自动化的时候,发现没法用write方法在输入框中输入中文——想想也有道理,毕竟write只是对键盘操作的封装,而键盘能输入什么内容,完全取决于输入法;但如果想输入点东西,还要先操作切换输入法,实在太复杂了,所以就想用剪贴板的复制粘贴来实现。

Python动态执行代码修改命名空间

2021-07-15
阅读 1 分钟
1.8k
不过,有的时候,我们的确想要让动态代码生成一些局部或全局的定义——比如一个变量名——让原始代码或者后面的动态代码可以继续使用。像下面这样直接定义是无法生效的:
封面图

Python 中的类定义循环引用

2021-07-10
阅读 2 分钟
5.2k
Python中通常不做严格的类型定义,但如果是常用且固定的数据结构,还是定义清楚使用起来更方便(起码对象后面打.的时候,IDE可以自动给出方法和属性名提示)。这时,一个复杂的结构,就有可能循环引用,比如:
封面图

Python 代码动态执行初探

2021-06-22
阅读 3 分钟
5.3k
作为“动态”语言,Python在运行时加载一段代码并执行,肯定是比需要编译的“静态语言”(比如C,Java)要方便多了。执行方式可以按是否返回结果,简单分为两种:exec和eval。execexec负责执行字符串代码,可支持多行,可定义变量,但无法返回结果 {代码...} 执行结果> My result: 18evaleval可以返回结果,但只能执行单...
封面图

Python 自动将dict-list嵌套数据 转换成 带类型定义的对象

2021-05-26
阅读 3 分钟
4.7k
Python不是强类型语言,开发人员没有给数据定义类型的习惯。这样虽然灵活,但处理复杂业务逻辑的时候却不够方便——缺乏类型检查可能导致很难发现错误,在IDE里编码时也没有代码提示。所以开发了这个小工具来解决它。

Python 反射总结

2021-05-15
阅读 5 分钟
2.3k
它们既可以访问类成员,也可以访问实例成员,就像直接用'.'访问的效果一样。但这两个方法都必须指定成员名称,如果要写的代码不知道传入的对象有哪些成员,就无法获取了。

Python 读写和解析 YAML 文件格式

2021-05-12
阅读 3 分钟
4.2k
目标读写API简单解析出来的数据结构易处理支持对象的序列化/反序列化库一个比较好用的库是ruamel,需要安装一下: {代码...} 然后代码中导入即可: {代码...} 但导入的YAML是个类,真正用的时候,需要创建一个实例yaml = YAML()读写文件准备一个配置文件: {代码...} 读代码中首先需要自行打开文件,然后把文件对象传给ya...

配置文件选型——为什么要用YAML?

2021-05-09
阅读 2 分钟
6k
开宗明义: YAML是个好格式!作为配置文件,YAML应该是对人眼读取和编辑最友好的了,当然扩展性呢,就比JSON差了点,更不如XML,不过有舍有得么,一般情况下够用了。优点直接上例子,看一下对比效果就知道了。JSON同一组配置,用JSON写是这个样子: {代码...} 虽然格式化以后可读性也不错,但编辑起来就费劲了。这还仅仅...

解决Kivy页面输入框无法显示Windows输入法的问题

2020-11-04
阅读 2 分钟
4.2k
Kivy是Python环境下"著名"的图形界面环境,好吧,实在不怎么著名,但Python下的UI框架都太弱了,相对来说,Kivy已经是最好的——起码有自己的页面布局语法,不至于每个控件都得自己用代码new出来,也可以做出比较有现代感的页面样式。

从源码编译 sdl2.dll

2020-11-04
阅读 2 分钟
3.6k
本人对C++开发完全不熟悉,但一个python项目需要的缘故,要修改SDL2的源码,网上搜资料,发现关于SDL源码编译的内容少得可怜,而且对C++的门外汉太不友好了,导致走了很多弯路。

解决网页上元素旋转以后,边角超出父节点范围的问题

2020-03-28
阅读 1 分钟
4.3k
只要做transform:rotate(45deg)的设置就可以旋转45度了,如果想指定旋转中心点,那么就再设置一下transform-origin:50% 50%。旋转以后的效果如下: