
Python
大马鱼哈
这个作者很懒,什么都没留下…
展开
-
pytesseract 提高印刷体数字识别率走的弯路 白底黑字
屏幕截图里识别数字,非常正规的字体,但是识别率不高,反复实验后发现:图像要白底黑字白底黑字白底黑字重要的事情说三遍,凡是没有白底黑字的也能部分识别,但是效果惨不忍睹. height, width, deep = cropImg.shape # cropImg是从图片里截取的,只包含一行数字 gray = cv.cvtColor(cropImg, cv.COLOR_BGR2GRAY) # 转灰度图 ...原创 2020-12-03 02:53:35 · 3720 阅读 · 3 评论 -
pandas 写入excel 转换Url链接的两种方法
有时我们把pandas的DataFrame写入excel时,明明字符串是一个网址链接,但是却不能在excel里直接点击打开,有时却可以,具体原因不详,不过以下两个方法可以解决问题第一种方法,写一个函数,把相应字段做转换def excel_url_fun( input_value ): ''' 把一个网址字符串转换为excel公式 ''' return f'=HYPERLINK("{input_value}","{input_value}")' if __name...原创 2020-11-17 04:24:04 · 3276 阅读 · 0 评论 -
pandas set_value 弃用后的替代方式 ‘DataFrame‘ object has no attribute ‘set_value‘
旧的写法:import pandas as pddf = pd.DataFrame({'Year': [2000, 2001, 2002 , 2003]})df['link'] = '-'df.set_value(0, 'link', '=HYPERLINK("https://en.wikipedia.org/wiki/2000", 2000)')df.set_value(1, 'link', '=HYPERLINK("https://en.wikipedia.org/wiki/2001",原创 2020-11-17 03:18:35 · 5022 阅读 · 1 评论 -
pandas 保存excel 数值显示科学计数法的问题
注意有些文章里把df[字段名] =df[字段名].astype(str) 直接写成df[字段名].astype(str) ,那是没用的.import pandas as pdfrom os.path import abspathdef save_json_file_to_xls(jsonFileName = "20201104_182751.json",xlsFileName = "20201104_182751.xlsx", strFiledLst=["user_id"]...原创 2020-11-06 17:17:58 · 3185 阅读 · 1 评论 -
Python 通过变量ID 得到变量的值
已知获得变量的id用函数id(),那么它的反函数是什么?答案是:PyObj_FromPtr,据此,写了一个函数di(),可以根据id()的结果获得变量的值from _ctypes import PyObj_FromPtrdef di(obj_id): """ 通过变量ID 得到变量的值""" return PyObj_FromPtr(obj_id)if __name__ == "__main__": i = {"j":99,"name":"jack"} ...原创 2020-10-30 15:58:09 · 3618 阅读 · 0 评论 -
Python 动态参数用元祖和字典做函数输入参数的例子
一直好奇函数定义里的*args *kwargs是怎么实现的,查阅资料后自己写了一个例子.注意一下这里pKeys=list(para.keys()) ,字典的keys返回类型是 dict_list,必须用list()进行转换,否则不用调用.注意 *args和 *kwargs必须放最后,否则提示语法错误# 动态参数def TuplePara_add(*args): ''' 只用元祖做参数''' result = args[0]+args[1] return ...原创 2020-10-28 22:59:16 · 869 阅读 · 0 评论 -
Python 动态载入模块 import_module 例子
传统使用abspath的方式是import osif __name__ == "__main__": print(os.path.abspath('.')) 但是可以通过import_module动态import进行调用from importlib import import_modulefrom logging import Logger as logdef load_dynamic_moudles(): try: mods = im...原创 2020-10-28 19:06:06 · 938 阅读 · 0 评论 -
Python 异常处理的一个小例子
主要是用来记录一下:raiseError的用法,这里我自己引发一个TimeoutError,这个错误网络爬虫上比较多见, 常常死连不动没任何反应.这时要事先设置好timeout再连.import sysimport tracebackdef MyTryCatchException(): for i in range(0,3): try: if i == 0: raise TimeoutError('...原创 2020-10-28 16:26:43 · 552 阅读 · 0 评论 -
引发百度翻译api错误的一段文字
使用 httpClient=http.client.HTTPConnection('api.fanyi.baidu.com') ,返回错误,仅此记录一下.错误代码:52002error_msg: SYSTEM ERRORThe increased mortality was correlated with a significantly augmented viral load in the Vα14 Tg mice that was detectable at day 8 (0.4...原创 2020-10-25 01:42:55 · 864 阅读 · 0 评论 -
python多线程下单个文件源码
网上看了很多,真能用的不多,主要是不处理解决网络异常,导致网络特好的情况下才能正常工作.更多的不识别非断点续传网站,导致这些网站成功下载但是文件不对. 这里我改了一个能用的, 速度还不错,加入了进度条,看上去很直观,测试外网的下载地址最好用上代理, 否则速度慢.有些网站不允许用request访问,如果不能正常下载先确定是不是对方设置了.有些下载链接是要跳转的,本代码没处理. 如果你使用本程序异常且确定不属于以上情况,可以留言附上你的下载链接,我会抽时间检测. 验证数据错的技巧...原创 2020-09-11 23:06:05 · 220 阅读 · 0 评论 -
Inkscape 1.0 插件(5) 用VSCODE / Visual studio2019 调试python插件
前面讲过的内容最终都要用self.msg调试, 显然不省事, 习惯用IDE指变量名就看到内容的时代, 这方法太慢了.经过一番探索, 终于找到了简单方法, 其实就是以前我们调试c++ dll动态库的办法 : 附加到进程 (不知这次面对ink插件为啥迟迟没想到这个办法 , 饶了点弯路)具体做法是:1. 在插件里写窗体(或者消息框) 让程序停下来等待输入 , 比如我的前一篇https://blog.youkuaiyun.com/majian/article/details/106851866用Qt窗体....原创 2020-06-19 17:29:25 · 1431 阅读 · 1 评论 -
Inkscape 1.0 插件(4) 使用QT界面输入参数修改路径,让插件更强大
上一节里说过把解释器调整到默认的python3.8.3后可以做很多事, 本文就演示一下在Inkscape插件里如何使用Qt做输入界面, 并用全局变量方式传递参数, 实现修改svg的目的. 关于如何在python里使用QT做界面, 网上有很多教程, 这里不详细说, 我安装Qt Designer遇到的一点小问题可以参阅另一篇文章.https://mp.youkuaiyun.com/console/editor/html/106792573首先在Qt Designer里设计一个如图的界面....原创 2020-06-19 12:19:17 · 1398 阅读 · 0 评论 -
Inkspace 1.0 插件(3) 修改Python解释器路径
Inkspace 1.0 自带了python3.8.2的版本, 但是我已经安装了python3.8.3 , 就想用自己安装的这个python来运行插件, 好处是:1. 可以设法调试插件程序, 插件本身用py编写, 但是调试几乎只能用self.msg来显示变量, vscode/pycharm在Inkex面前都得跪了, 很不科学. 效率奇低2. 可以使用更多的python库, 因为自己平时默认安装的库都在3.8.3的目录,而不是inkspace里的python目录, 如果某个算法用到了一个库, 两边都安原创 2020-06-18 22:53:25 · 1051 阅读 · 0 评论 -
win10下python3.83 安装dlib, 不用装boost
一开始用pip3 install dlib 安装没有成功. 查阅资料需要安装的东西还比较多, 甚至要安装boost, 我觉得奇怪. 我用win10,已经安装vs2019, 但听说编译要boost要半个小时, 自然不能忍. 于是综合各种资料做尝试,终于得到正确的安装步骤1. 先安装好vs2019 和python3.8.3, 这个已经OK的.2. 安装好cmake, 下载dlib-19.20.zip, 解压到D:\dlib-19.20, 新建一个编译目录D:\dlib-19.20Build3....原创 2020-06-16 19:07:37 · 858 阅读 · 0 评论 -
Python3.8.3 Qt Designer 提示This application failed to start because no qt platform plugin could be
全部uninstall python3.8.3 再重装还是不行, 终于找到办法, 参考:https://blog.youkuaiyun.com/calmreason/article/details/104851565我的python安装在 e:\python3.8, 把E:\Python3.8\Lib\site-packages\pyqt5_tools\Qt\bin\platforms 这个目录里的qwindows.dll改名old_qwindows.dll, 或直接删除,把E:\Python3.8...原创 2020-06-16 18:24:31 · 1491 阅读 · 6 评论 -
Inkspace1.0 插件(2) 添加图层画线 例子
第二个插件实现画路路径, 添加图层配置文件 D:\Inkscape\share\inkscape\extensions\mj_draw_path_example.inx<?xml version="1.0" encoding="UTF-8"?><inkscape-extension xmlns="http://www.inkscape.org/namespace/inkscape/extension"> <name>Draw Path Example&原创 2020-06-08 22:06:44 · 586 阅读 · 0 评论 -
Inkspace1.0 插件(1) HelloWorld python例子
Inkspace1.0 发布后, 插件写法有了变化, 以前网上很多东西不能用了. 这里整理出一个Hello world例子.Inkspace1.0的python插件有两个文件, *.inx和*.py, 写好后需要拷贝到插件目录, 比如我安装路径在D:\Inkscape, 则插件路径为:D:\Inkscape\share\inkscape\extensions , 文档里说在Preferences里有个User extensions设置也可以用, 我没试过, 觉得没必要放在那里尝试, 因为写代码需要用..原创 2020-06-08 21:50:10 · 662 阅读 · 0 评论 -
numpy insert用法 在数组里插入
单独插入一个在前面 def test_Insert1(self): aa= np.array(( (156,3),(184,3),(211,4),(239,4))) bb = np.array(((99, 11), (88, 22))) aa= np.insert(aa,0, bb[0],0) print (aa)结果[[ 99 11] [156 3] [184 3] [211 4] [239 .原创 2020-05-21 13:15:34 · 2084 阅读 · 0 评论 -
pytorch Fashion MNIST 数据集下载慢怎么办
import torch # 导入pytorchfrom torchvision import datasets, transforms ## 导入数据集与数据预处理的方法import matplotlib.pyplot as plt# 数据预处理:标准化图像数据,使得灰度数据在-1到+1之间transform = transforms.Compose([transforms.ToTensor(),transforms.Normalize((0.5,), (0.5,))])# 下载Fash.原创 2020-05-19 15:56:04 · 2352 阅读 · 0 评论