自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 [PyQt] 记一次程序退出崩溃问题

Qt 程序退出时崩溃,这种问题很难找。最终使用逐步在初始化函数中,提前 return 的方式,定位到导致崩溃的代码。原来是循环相互为父导致的。即 A 设置 B 为父,B 又设置 A 为父

2020-08-03 09:35:08 11

原创 [C] 数据处理应该考虑到有可能的超大数据,将空间申请在堆上

之前用 C 写的一个解析数据的 dll 文件,面对别人提供的数据文件,无法打印出数组的前30个值。检查发现是这个数据文件太大,解析成数组长度有200万,而我将空间申请在栈上,导致失败。写程序时应该考虑到可能的数据大小,将有可能很大的数据空间申请在堆上。...

2020-08-03 09:30:20 8

原创 [Python] Pyinstaller 使用 --key 参数后程序无法运行

Windows 7 x64Python3.8.3pyinstaller 打包时加密源码,防止反编译,可以使用 --key 参数,需要 pycrypto 包,安装 pycrypto 包需要安装 VC 14.0 编译,有4G大小 … 不能改目录…C 盘剩余 2G…本来按照网上说的,使用 pycryptodome 代替 pycrypto,打包后仍然报错。网上查了一圈说是 pyinstaller 与 pycryptodome 不兼容。看来项目中用 pycryptodome 可以代替 pycrypto ,用 p

2020-07-23 15:49:51 33

原创 [Python] ImportError: DLL load failed ... 找不到指定的模块 此类问题解决方法

最近升级 Python 项目,由 Python2.7 升级到 Python3.8.3,项目使用了 PySide2,对于较新的Python3.8.3 , PySide2 可能存在些许不兼容问题,环境配置完成后,出现一连串的ImportError: DLL load failed 找不到指定模块对于很多 Python 开发者来说,这类问题最为头疼,不知道如何下手解决。我是在 virtualenv 虚拟环境下配置 Python3.8.3 的开发环境。OS: Windows 7 x64各种依赖安装完毕后

2020-07-21 15:55:12 306

原创 [Qt] 使用 QMediaPlayer 从QIODevice 播放音频偶尔崩溃的问题

使用QMediaPlayer播放即时生成的wav文件,为了方便与性能,直接保存在内存中播放。 QMediaPlayer player; QBuffer buff; buff.setData(QByteArray()); // fill buffer player.setMedia(QMediaContent(), &buff); player.play();播放有时会崩溃,时而发生,时而正常。网上找了一圈也没能找到根源。然后在文档上发现了一句话:No

2020-07-21 10:00:57 50

原创 对 MySQL 表分区与 MERGE分表的个人理解

问题最近数据库表数据接近3000万,查询性能有点慢分析对于MySQL数据库我已经做的:经常查询的字段,已经建了索引,遵循左前缀原则。表已经分区,按照数据日期,每年的数据一个分区。MySQL 分区与分表的比较...

2020-06-03 17:30:24 113

原创 Go 添加图标,管理员权限执行后,编译报错

安装rsrcgo get github.com/akavel/rsrc创建manifest文件<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> <trustInfo xmlns="urn:schemas-microsoft-com:asm.

2020-06-03 01:00:24 77

原创 协方差计算方法

网络上爬了一通协方差、协方差矩阵计算方法,留个备注。假设:x = [0, 1, 2, 3, 4]y = [1, 2, 3, 4, 5]第一种计算方法N = x, y的sizeE(X) = X的平均值E(Y) = Y的平均值E(XY) = (XY逐项相乘的和) / NCov(X, Y) = E(XY) - E(X)E(Y)举例:E(X) = 2.0E(Y) = 3.0...

2019-12-19 16:22:05 165

原创 golang 编写 dll 给别的语言调用

// func.gopackage mainimport "C"import "fmt"//export Addfunc Add(a int, b int) int { return a + b;}func main() { }编译:go build -ldflags "-s -w" -buildmode=c-shared -o func.dll func.goGo ...

2019-09-10 18:55:20 650

原创 Python调用 C语言生成的 dll 文件

Windows 系统VC 编译器// func.c#ifdef _MSC_VER #define DLL_EXPORT __declspec( dllexport ) #else #define DLL_EXPORT#endifDLL_EXPORT int add(int a,int b){ return a+b;}编译:cl /LD func.c...

2019-09-10 18:04:30 676

原创 不同语言程序 zmq 通信遇到的问题

工作中用到了golang写一个opc 客户端,从opc server获取数据,并格式化成内部通用格式,屏蔽外差异。用到了golang的zmq ,作为 publish server。以前客户端是用python写的,用的是subscribe模式。但是有一个问题,python 的zmq 的发送接收有很多方法,send(), send_json(), send_multipart(),而golang...

2019-08-12 13:57:27 414 2

原创 [PyQt] QTableView 添加代理显示控件

照着《Qt C++ Gui编程》里照葫芦画飘成功了,我好棒棒添加QComBox也成功class SpinBoxDelegate(QItemDelegate): def __init__(self, column, parent=None): super(SpinBoxDelegate, self).__init__(parent) self.column...

2019-06-17 14:31:57 870

原创 记第一次用Go写程序解决Python性能问题

Go 学习有一段时间了,书还差一点没看完,一直没动手写代码。场景:近期客户抱怨我们给的数据导出工具太慢了,领导说看看能不能优化。思考:第一时间想到了用Go,因为学了一段时间,也想实战一下。Go的速度是接近C/C++的,并发容易,且这个工具执行的任务都是一个个数据文件解析,独立无关联,适合用高并发的方式。但我们这个工具是有界面的,用的PySide。全部用Go重写比较费时,而且网上看了一下...

2018-12-29 12:20:05 429

原创 最近做项目感想

最近做项目,与同事有一些碰撞,也有些感悟。以目前的经验感悟,项目开发核心精华在于架构、方案设计,就好比开发的核心是算法、设计模式,这才是让项目在整个生命周期中受益的东西。不要为了学习某种技术,而去应用它; 也不要因为不熟悉,也不用某种技术、方案。而是要根据项目场景决定是否采用。分析场景,分析用户体验。这里说的某些技术无非是一些流行工具、包、扩展的使用,技术是可重用的。也别人应用过,在网络上学...

2018-10-25 20:50:11 3090

原创 我读过的

最近读物只顾闷头加班 ,时间久了,技术提升难免遇到瓶颈,那就多读书吧:Python Cookbook、数据结构与算法(Python语言描述)、设计模式、Clean Code、高性能MySQL(reading)...

2018-09-25 20:49:16 211

原创 (一)深度学习入门——基于Python理论与实现

第三章 神经网络机器学习的问题大体上可以分为回归问题和分类问题;sigmoid函数 h(x) = 1/(1+exp(-x)) exp(-x)表示 可用 math.exp(-x) 计算 图形: ReLU函数 h(x) = x (x > 0) h(x) = 0 (x <=0) 图形: softmax函数 分子是输入信号的指数函数,分母是所有输入信号...

2018-09-14 15:26:12 4444 1

转载 【转】MySQL数据库 外键、视图、存储过程、触发器的优缺点

2018-05-09 11:10:06 562

原创 Python 实现 Game of life

团队内部组织现场编程活动,实现这个Game of life。现场没写出来,思路是有的。 结尾讨论时领导提到了数组,一下想到了用Numpy.网址:https://bitstorm.org/gameoflife/代码: Python2.7# -*- coding: utf-8 -*-import numpy as npimport osclass AAA(object):...

2018-04-28 22:30:53 595

转载 [Python]zeromq:socket request/receive, 发布/订阅消息, 进程间通讯

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2016-06-07 13:42:30 1155

原创 [PyQt] 使用.qrc 生成资源文件供程序中使用

建立 .qrc文件,里面保存了资源位置:<!DOCTYPE RCC><RCC version="1.0"><qresource><file alias="icons/add.png">icons/add.png</file><file alias="icons/appicon.png">icons/appicon.png</file><file alias="icons/button.pn

2015-08-25 11:02:36 14849

原创 [PyQt] PyQt4写的音乐播放器

实现了: 播放歌曲;上/下一首;随机、循环、单曲循环;批量添加、删除歌曲;打开、存储播放列表(M3U格式);添加到收藏;单行/多行歌词桌面展示,有渐变填充效果;歌曲搜索;播放网络歌曲;自动保存配置;托盘、菜单播放控制。 下载地址: https://github.com/wn0112/PPlayer

2015-08-18 16:49:00 5903 16

原创 [PyQt] 自定义QSlider支持鼠标点击和滚轮事件

from PyQt4.QtGui import *from PyQt4.QtCore import *class progressSlider(QSlider): def __init__(self, orientation, parent=None): super(progressSlider, self).__init__(orientation, parent)

2015-08-05 16:54:22 4535

原创 [PyQt] 在QLabel上用drawText实现文字滚动

from PyQt4.QtGui import *from PyQt4.QtCore import *try: _fromUtf8 = QString.fromUtf8except AttributeError: def _fromUtf8(s): return sclass scrollTextLabel(QLabel): def __init_

2015-08-04 16:52:59 6845

原创 [PyQt] Python+PyQt4 写的有一点仿Window自带的看图工具

功能点:1. 上一张/下一张2. 图像缩放3. 放大拖拽4. 顺/逆时针旋转5. 设置桌面背景6. 查看时删除7. 图像自适应程序窗口8. 全屏显示9. 打印10. 另存其它格式11. 变更主题12. 无边框圆角窗体,及缩放13. 支持GIF动图

2014-07-22 16:52:40 4030 2

原创 Python Windows下subprocess立即关闭管道

Windows下带UI的Python程序,如果其中使用了subprocess.Popen,那么我们可以设置shell=True来不显示command窗口,但是这样的话,使用terminate()就无法立即终止管道;如果想terminate()能达到立即终止的效果,又必须把shell=False,看起来是二选一。没关系,可以用creationflags来达到两全:import subproces

2013-06-17 16:31:29 3504

转载 Python 即时读取并输出管道内容

import subprocesspipe = subprocess.Popen('ping 127.0.0.1', stdout=subprocess.PIPE)for line in iter(pipe.stdout.readline, ''): print line.rstrip()

2013-06-17 16:18:56 6801

原创 RFT脚本执行工具

RFT(即IBM Rational Functional Tester)用来创建执行脚本,完成自动化测试。但脚本执行时我们往往想要得到更多东西。写这个工具的目的是为了从全局来掌控测试脚本执行和设定,完成一些杂七杂八的功能。这个工具依赖于RFT,必须安装RFT才能用。 它实现了加载测试脚本批量执行、计划测试任务、自动发送邮件通知和报告、测试前自动编译、设置执行次数、生成Html格式测试报

2012-09-24 20:30:19 1979 3

原创 Tcl/tk实例—使用tclkit工具将脚本打包成可执行文件(.exe)

下载 tclkit.exe 工具,及 sdx.kit 文件。复制一份tclkit.exe ,命名为tclkit2.exe。假设你的脚本文件为:app.tclStep1:命令行执行tclkit.exe sdx.kit qwrap app.tcl执行完毕会生成一个 app.kit 文件。Step2:tclkit.exe sdx.kit unwrap ap

2012-08-03 20:02:41 9386 28

原创 Tcl/tk实例-工具栏和菜单-图片预览工具

可以打开并查看图片,点击工具栏上 Previous 和 Next 按钮来浏览 前/下 一张。仅仅是一个例子,其它按钮和菜单未添加命令。package require Ttkpackage require Imgpackage require base64package require BWidgetpackage require Threadpackage require

2012-08-03 15:01:56 18426 7

原创 Tcl/tk实例-高精度计算器

应该还有Bug……#!/usr/local/bin/wish8.5# author: wn0112@gmail.compackage require Tkset w .set width 230set height 200wm title $w Calculatorset sheight [ winfo screenheight . ]set swidth [ winfo

2012-07-30 10:31:44 3930

原创 Tcl/tk实例-局域发送消息工具

#!/usr/local/bin/wish8.5# # author: wn0112@gmail.compackage require Ttkset top .set sheight [ winfo screenheight $top ]set swidth [ winfo screenwidth $top ]wm geometry $top +[ format %.0f [ exp

2012-07-24 09:42:49 3421 1

原创 Python读取复杂CSV文件

class ReadCSV: anchor = 0 final = [] def __init__(self, path, head=0): quote = 0 row_tmp = '' cell_tmp = '' cell = [] channel = file(path,'r') data = channel.readlines() channel.close

2012-07-16 19:15:59 5315 1

原创 Tcl 脚本读取复杂CSV文件

用 tcl/tk 写了个测试工具,需要用tcl 脚本读取csv 文件。但复杂的csv 文件中,每个单元格可能包含逗号,双引号,换行符,双引号中又有换行符等等情况,导致读取困难。网上找到的一些例子,大多是逐个读取单个字符,用了一段时间,感觉效率差了点。研究了一下,自己写了 tcl 读csv 文件的代码,如下:proc readCSV { channel { header 1 } { symbol

2012-01-11 18:13:45 5060 3

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