python 线程间通信

pyqt:

http://www.itdadao.com/articles/c15a558446p0.html

http://www.cnblogs.com/Finley/p/5268861.html

https://www.cnblogs.com/Finley/p/5228613.html

 

python:

http://blog.csdn.net/zklth/article/details/8709472

http://blog.csdn.net/crazy_fire/article/details/7506239

http://www.jb51.net/article/65459.htm

http://www.cnblogs.com/fnng/p/3670789.html

http://www.jb51.net/article/63512.htm

https://my.oschina.net/cloudcoder/blog/226111

我的这一年,回顾2016, 展望未来

2016年马上要过去了,2017年眼看着到来。 在这夜深人静的时候,好好停下来,看看这一年的我,翻开这日记本一样的博客,基本上记录着我这一年的轨迹。

此时的我,心情是复杂的,也是平静的。这年未几个月公司的动荡多少影响着我每天的心情,每天的状态,也影响着我对前路的看法,对这世界的了解。

还是先总结一下这年我都在忙些什么吧:

  1. 工作上确实没有太大作为,完整完成的项目只有一个,一个产品的测试开发。虽然也克服了不少难点,但总的来说这没多少可圈点的地方,总体是labview+网页+后端服务器PHP的解决方案。
  2. 我变化最大的可能是看不出来的东西, 基本上是思想上和认识上变化。一直以来认为电脑就是windows, 也知总努力学习相关的知识。但到现在越发认为这个平台带来了便利,也带来了束缚。最深的影响是,作为电子信息工程专业毕业的人, 做些电路板是最常见的事情,但是开始接触的画图软件是protel, AD, Candence之类的商业软件,对个人来说是比较贵的,对公司来说,也只会买几个licence结特定几个人用,于是个人用的话就得想办法破解之类的。但自从我开始做过一些软件,一些网页之后,深知一个功能全,使用方便的软件或系统是包含了很多开发人员的时间,精力,脑力,体力,甚至是生命的。所以这些软件的价格,我看来是合理的!但是我觉得个人经济上是很难愉快地买得下手的。于是就有这样的局面,当我在自已电脑上运行一个破解的软件时,心里还是有隐隐的罪恶感的。感觉知识产权保护我可以从现在做起,从我做起。于是在这一年里,当我再做项目的时候,我有可能,有机会选择的时候,我都会去选择开源的软件来完成,有机会的时候就回馈开源。比如以下:

使用Linux系统

使用开源的服务器软件LAMP, Nginx

使用开源的编程语言php, python等

使用开源的pcb设计软件kiCAD

使用开源的硬件平台Raspberry Pi

使用开源的文本编辑器vi

使用开源的视觉开发库openCV, simpleCV

自己做的一些小程序也开源,分享结有兴趣和需要的朋友

这样做下来,心里是踏实的,心情是愉快的,增加了友谊,分享了知识,开宽了视野!

3. 今年玩得最多的是树莓派这个平台了,在这上面,我在学习python, openCV, simpleCV, linux本身shell操作,pyqt的GUI, 还有基于python的大数据分析也在进行。这上面能做的事情太多了,而且随着芯片架构,和制程工艺的发展进步,我相信这种所谓智能化的小设备会越做体积越小,功能越强大,会影响到社会的方方面面去!树莓派3代已经让人看到曙光了,明年4代出来时相信更强大,期代!也希望在这个社会进步的过程中我能参与其中,那怕是其中一点点的角落里有我的身影!

4. 博客空间继续续费,每年几百块的费用,我觉得还是很值得的, 我一直当笔记本来用,所以有点乱,有关注的朋友且看且原谅,哈哈,但搜索的功能还是很好用的。用它用的安心,不担心什么时候关门不开放的这类间题了。这年写了240篇文章,很多都是短短的记录信息了,也有些是很有心的记录一些技术实现过程的。每天大约300-500左右的有效浏览量,多谢各位亲的关心!

5.对了,今年还去考了个驾驶证,前前后后半年,终于下来了。这个过程中,看到了人性,看到了现实,看到了社会的痛点,也看到了自己。

6. 家里,小朋友1岁半了,会走路了,整天“车车”,“嘟嘟车”,“嘟嘟车车”学说话了。我家亲为小朋友为家里都付出了很多,瘦了。对我也很支持,虽然不爱表示,但深深感觉到你的关心,谢谢你!我会努力的!爸妈在帮忙带小朋友,也是很辛苦,谢谢爸妈!

今年过来,心情很多时候是不上不下,不能平静的,所以也没好好安下心来做事,所以成就也没有亮点。总体来说还是有进步的,毕竟那些起早贪黑的时光也是有结果的。

职场混到现在,到了现在这个境地, 感触良多,路在脚下延伸,感觉到眼前的苟且,放眼望去,也看到诗和远方,还闻到路上的汗水与泪水!

转一诗,共勉:

展望来年2017, 我是有信心的!心态是开放和积极的!过程必然是曲折崎岖的!走过去,做就是了!

扬帆起航〜

 

关于人,目标,财富的一些理解

早上了5点钟的深圳,安静,平和。路灯一直亮到远方,路上不时开过一辆货车,一辆出租车。

自然就想起了关于早起,小目标,和财富的话题和这些事情之间的关系。

这里仿佛看到了人性,不同人的价值观,和这个时代,这个地方给予人的压力和动力。

抽象一下感觉有2种不同的思考模式:

  1. 人起源于对财富的渴望,于是用尽不同的方式(包括钱),达到赚到财富的目的。
  2. 人起源于对目标的渴望,于是用尽不同的方式(包括钱),去达到目标。

可以发现,这2种思考模式其实是一种模式,只是第一种更具体,第二种的目标也可以是财富,可以说第一种是第二种的子集,第二种是第一种的超集。但分成2种的原因,我想是目标可以包含更丰富的内容,使用在更大的主体上 。

如国家这样的大实体,可以有2钟思考模式:

  1. 为了钱的积累,使用了人的手段
  2. 为了人的有序发展,使用钱的手段

这里就大有不同,从目标上看第一种的目标是钱,第二种的目标是人。在人和钱之间冲突需要取舍时,明显就有不同的行动与结果。

中国有句古话:财散人聚,财聚人散。

这里谁是因,谁是果,就因人理解就有不一样的结果了。

这里仿佛要问自已:究竟什么是财富?

但仿佛每个人的答案早已定型, 这就是命!

ubuntu 下 pycharm IDE 安装

ubuntu16.04下安装pycharm:

  1. 下载pycharm, 到http://www.jetbrains.com/pycharm/download/下载对应操作系统的安装包,这里选Linux, PyCharm Community Edition.
  2. 安装JDK, pycharm基于JAVA.

安装后检查一下版本,看安装完成没有:

然后设置JAVA_HOME环境变量, 在/etc/environment文件里加入一行:

保存后source一下:

 

3. 安装pycharm.sh

从pycharm官网下载下来是一个压缩包,解压后就可以用了,所以把解压后的文件夹放到想放的地方,运行bin/pycharm.sh就会运行一行安装设置。

这里我把解压包放到了/usr/share/文件夹下面。

然后运行里面的bin/pycharm.sh,按提示一步步做下就好了。其中还有一个Install-Linux-tar.txt安装指导。可以按里面的做。

安装完成后打开,上传一下开启界面:

全程参考:https://www.cnblogs.com/chentq/p/4975794.html

Euler’s formula

欧拉公式的相关公式总结:

参考:

https://en.wikipedia.org/wiki/Euler%27s_formula

http://muchong.com/html/201405/7356392.html

https://www.zhihu.com/question/23234701

http://www.guokr.com/post/66798/

http://cn.bing.com/search?q=%e6%ac%a7%e6%8b%89%e5%85%ac%e5%bc%8f%e7%89%a9%e7%90%86%e6%84%8f%e4%b9%89&qs=AS&pq=%e6%ac%a7%e6%8b%89%e5%85%ac%e5%bc%8f+%e7%89%a9%e7%90%86&sc=1-7&sp=1&cvid=843387E76F234E8D8AE733A0C34A75C7&FORM=QBRE

 

 

 

 

让wordpress支持svg格式图片

因为要记录一些公式,源图片格式为svg. 但发现上传到wordpress时不支持,查了一下解决方法,有2种:

  1. 更改wp_include/functions.php文件, 找到wp_get_mime_types()函数,在// Image formats.注析后面图像格式最后一行加入svg对应的格式: ‘svg’ => ‘image/svg+xml’, 最后看起来代码是这样的:

更改后再上传时发现已经支持svg格式了,如下图的公式:

    2. 还有一种方法是更改所使用主题文件夹下面的functions.php文件。把下面的代码加入其中:

这种方法没有尝试,因为觉得如果一开心更换一下主题玩玩,那又要改对应主题的文件了。

wordpress 用户头像图片失效的解决方法

发现wordpress 用户头像打了个问号,打不开了。

查看图片链接,是如:

http://1.gravatar.com/avatar/79355402bf1e5773c3624a1f2cbb7eb7?s=64&d=mm&f=y&r=g

这样的链接,就尝试把前面的1.去掉改为:

http://gravatar.com/avatar/79355402bf1e5773c3624a1f2cbb7eb7?s=64&d=mm&f=y&r=g

发现这个图片是打的开的。

于是查网络上的解决方法,很多是基于gravatar被墙,全都打不开的情况下改用别的服务器的做法,但明显现在gravatar是可以用的,只是链接有点不一样而已。

于是自己想了想,应该解决方法比较简单的。进入wordpress/wp-includes目录,查找一下包含“gravatar.com”字符串的文件在哪里:

 

打开link-template.php看了看,终于在文件的3998行左右找到以下内容:

于是果断把那个%d.和后面的$gravatar_server,去掉变为:

保存后,再刷新网页,哈哈,图片出来了:

screen-shot-2016-12-04-at-8-11-37-am

 

 

 

 

 

 

 

python binascii中uu, basse64, qp, hqx 编码与解码

python的binascii模块中包含了几种二进制与可打印字符串相互转换的几种常用编解码函数。dir查看一下:

主要包括:uu(Unix-to-Unit encoding),  base64, qp(Quoted-Printable), hqx(binhex) 四种编解码方式。它们都有共同的一个目标,就是把所有的二进制内容转成可打印的字符串,方便在程序间,网络, email上传输。下面是对这几种编解码理解的笔记:

UU:全称Unix-to-Unix encoding

编码过程是:每输入3个字节(3X8bit),平均分成4份(4x6bit),每份有6bit, 前面加2bit补全成为8bit, 然后每位加上0X20。 还有2个规定:

  1. 其中如果加0x20后是0x20(也就是说没加之前是0x00),那转成0x60(估计是为了避开空格0x20)。
  2. 如果输入不够3个字节,就用0(0x00)在后面补全成为3位。

所以uu编码后的所有字符都落在0X21-0X60之间, 如下图红线之间的字符, 因为3字节变4字节,所以长度变大了。

ascii-uu-encoding

http://blog.csdn.net/taozpwater/article/details/8074896抄来一段C实现的编解码代码:

uu编码:

uu解码:

主要参考:

http://web.chacuo.net/charsetuuencode

http://blog.csdn.net/jeketl/article/details/555553

http://blog.csdn.net/L_thread/article/details/5974749

 

base64:

base编码思想跟uu很像,也是3字节变4字节,分了之后的处理开始不一样了。不加0x20了,而是做一个查表操作,一一对应一个可打印字符,表格如下:

ascii_base64_encoding

同样如果输入不是3的整数倍,在后面补0(0x00),然后加上对应个数的=号,补一个=号表示补了一个0,补二个=号表示补了二个0。

发现没有,索引为62,63的+号和/号,在一些场合不能使用的,如URL中,这时会相应变成其它的符合如-和_。

主要参考:

http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/001399413803339f4bbda5c01fc479cbea98b1387390748000

http://baike.baidu.com/link?url=p9ZwPqUBPRJt4Qe7b4u88QILHohAPcP1kEiejOxIXfwuiCKXoDz89T1w3gGBmUVMihvhr7IlZ3xbwiP0VPT1Oq

http://base64.xpcha.com/

 

Quoted-printable:

编码的基本方法是:输入数据在33-60、62-126范围内的,直接输出;其它的需编码为”=”加两个字节的HEX码(大写)。为保证输出行不超过规定长度,可在行尾加“=\r\n”序列作为软回车。等号”=”(十进制值为61)必须表示为”=3D”。跟uu,和base64不一样的是这里不做3字节转4字节的操作了。直接判断一下范围就做转换了。

ascii_qp_encoding

主要参考:

http://biancheng.dnbcw.info/216/216040.html

http://web.chacuo.net/charsetquotedprintable

 

hqx(binhex):

这个编码方式查也很多资料都没有明确的定义,都是说跟苹果系统有关的文件会用到这种编码。终于有在github上找到一个不太官方的总结,凑合着看吧。也不知道正确性如何,后面再验证一下。

https://gist.github.com/i-e-b/fe0a0158ae61973802a9

大约的编码方式:也是3字节转4字节,然后查表, 有效的字符如下,也是64个。

!”#$%&'()*+,-012345689@ABCDEFGHIJKLMNPQRSTUVXYZ[`abcdefhijklmpqr

hqxbinhex-codes

符上github上的原文,时间是2016-12-01复制过来的。

binascii官方DOC:

https://docs.python.org/2/library/binascii.html

其中有hexlify(),和unhexlify()应该比较常用的函数。

 

还有相关网页的一些用法:

http://blog.csdn.net/b_h_l/article/details/9357453

https://www.cnblogs.com/LarryGen/p/5088144.html

http://www.2cto.com/kf/201208/145066.html

Timelapse — Google Earth 32年的岁月

Google地图开放了一个”延迟摄影”,支持用户调用全球的卫星拍摄库存浏览从1984年到2016年的地球变迁,几乎支持所有的国家和城市,如时光机一样,32年,和我一样的成长,太有感触了!

https://earthengine.google.com/timelapse/

1984,那年我出生

1988,那年我上幼儿园

1990,那年我上小学

1997,那年我上初中

2000,那年我上高中

2003,那年我上大学

2007,那年我大学毕业

2016,在深圳看着这几秒中闪过的岁月,这里的亲人,朋友!

enping1984-2016