2013年 九月 27日 周五 | tags: python, code, argparse, python27, -- (permalink)

今天下午没事,就优化了一下以前写的一些工作上用的小工具,当然大多数都是python写的命令行下的小工具,之前命令行参数都是自己解析,虽然不是什么复杂的事情,但是自己临时写出来的东西毕竟不如人家写出来的好,正好前短时间看到python2.7把 argparse 加入到了标准模块中,所以这次对这些工具的代码重构就是使用了 argparse 替代自己写的那个简陋名两行解析工具。


2013年 八月 30日 周五 | tags: python, code, -- (permalink)

公司最近在调整网站的模块,把网站的公告模块去掉,公告的数据移到Discuz做的论坛中,整体功能都很简单,写了一个python脚本,执行一下就能完成数据迁移。在数据迁移的过程中有个小问题,我们公告的正文是用富文本编辑器写的,代码是 html 代码,但是在Discuz中确是用 bbcode 所以就需要对公告正文进行转换,这里就要使用到python的一个模块: html2bbcode


2013年 八月 16日 周五 | tags: python, python33, mingw, gcc, -- (permalink)

今天安装在 python3.3.2 下安装 misaka 编译的时候报出了一个编译错误 gcc: error: unrecognized command line option '-mno-cygwin'


2013年 八月 14日 周三 | tags: math, zero, reading, notes, -- (permalink)

之前买了几本关于数学的书,这两天看了《程序员数学》第一章 0的故事,以前只是知道0,却不知道0在数学中的作用和意义。

计数法

在10进制中,每一位的数字表示的是这一位上的个数,如书中的2503:

2 => $2 xx 1000$ => $2 xx 10^3$

5 => $5 xx 100$ => $5 xx 10^5$

0 => $0 xx 10$ => $0 xx 10^1$

3 => $3 xx 1$ => $3 xx 10^0$

如上面引用中的,把每一行的结果加起来就是 2503,这里我觉得在中文中表示数字其实更准确: 两千五百零三 ,在每一位都表示了这一位的单位,在阅读上更容易理解和准确 ...


2013年 七月 29日 周一 | tags: 闲聊, math, code, programer, developer, -- (permalink)

上个月的这个时候我买了 Kindle Paperwrite,看了一些关于历史的书和人物传记,最近两天又买了几本关于数学的书和一本C语言的入门书籍。我想我需要用6-8个月的时间看完这些书,然后在从中得到升华。

以史博古、以史通今、以史通事、以史通政、以史通智、以史知辱、以史知道

成为优秀的开发人员,可以没有数学技能,但成为卓越的开发人员,不能没有

从上个月的的19号到今天我一共看了三本书,一本历史和两本任务传记:

我并不想对这三本书做介绍,对于这三本书的内容是否真实,我也不想说太多,相不相信我觉得完全在自己。对于一个 Code Monkey (程序猿,代码猴),我一直想把自己排除在政治之外,我也是一直都这么做的,但是我依然认为不管是做什么职业,生活在那个阶层,什么年龄段,都应该读史书,以史明鉴,只有知道了真实的历史,我们才能更加明白自己的前路在何方!

至于读数学的书是因为上面那句话,我希望我自己能成为一个卓越的“ Code Monkey ”,但是我知道我并不聪明,也不如其他人努力,所以想让自己的名字前面加上 卓越 两个字的可能性并不大 ...


2013年 七月 15日 周一 | tags: python, ldap, rtx, win32com, -- (permalink)

最近公司正在准备使用 AD ( Activate Directory )服务来进行公司员工的帐号管理,这样就避免不了需要对AD的帐号和RTX的帐号和组织关系进行同步,所以才有了这篇文章。

Python-Ldap

Python-Ldap是python用来操作ldap的模块,可以对ldap进行查询,添加,修改,删除等操作,如下代码:

ldap_host = "127.0.0.1"
ldap_port = 389
ldap_who = "turbidsoul.me\\test"
ldap_cred = "test"
ldap_baseondn = "OU=XXXX,DC=turbidsoul,DC=me"
l = ldap.open(ldap_host, ldap_port)
    l.simple_bind_s(ldap_who, ldap_cred)
    result_id = l.search(ldap_baseondn ...

2013年 六月 23日 周日 | tags: python, cmd, ftp, progressbar, -- (permalink)

这是昨晚下班之后同事问我的一个问题,不过当时已经7点,如果在不出公司就会赶不上最后一趟公交车,所以就给同事说回家研究研究礼拜一给他答案,昨晚无事就看了一下。

需要用到的模块

原理

我们先来看一下progressbar的是原理,如下代码:

import sys
import time

for x in xrange(0,51):
    sys.stdout.write("Computing: [%s%s] %i%%\r" % ('#' * x , '-' * (50 - x) , x * 2))
    sys.stdout ...

2013年 六月 18日 周二 | tags: java, maven, css, -- (permalink)

这个问题是我的一个失误造成的,这是上一片文章的后续,我在使用正则做文本替换的时候没有注意到,这个正则在主干上是正常的,但是在分支上执行的时候使一行css少了一个引号,这个问题在浏览器中是暴露不出来的,之后在maven打包的时候对文件做压缩的时候才会出现,下面我们来看看是什么样的问题。

我们项目使用的是 yuicompressor-maven-plugin 做js和css的压缩,在压缩的过程中出现了下面的错误:

---------------------------------------------------
constituent[0]: file:/E:/opensource/apache/maven-2.2.1.RELEASE/lib/aether-api-1.13.1.jar
constituent[1]: file:/E:/opensource/apache/maven-2.2.1.RELEASE/lib/aether-connector-wagon-1.13.1.jar
constituent[2]: file:/E:/opensource/apache/maven-2.2 ...

2013年 六月 11日 周二 | tags: lesscss, maven, java, -- (permalink)

这其实是一个很简单的问题,本来并不打算写成一片文章的,因为这个文件和另外一个问题是一起的,就是我们在nginx上做css和js文件合并时遇到的,不过在这之前我还遇到了另外一个问题,就是我们开发环境是windows7,而nginx下有个静态文件合并的模块: http_concat_module ,是淘宝开源的,这个模块并不是nginx标准模块,所以要使用它需要自己重新编译nginx,具体如何编译我需要一段一点时间整理一下,在之后的文章中会写出来。

至于为什么要使用less是因为使用了 http_concat_module 之后css中文件的一些路径出现了错误,需要为css文件设置一些变量,其实使用maven的插件也可以进行变量替换,但是这样只能在maven打包的时候才能起作用,对于开发来说就不行,因为开发必须要求在编译的时候就生效。所以就需要使用maven的另一个插件lesscss-maven-plugin,这个插件的作用就是在编译的时候就能把less转换成css,这样做对我们最大的好处就是需要修改的地方是最少的,而且能一劳永逸的解决这个问题。

现在我们来说说这个插件如何配置:

添加插件

<plugin>
    <groupId>org.lesscss</groupId>
    <artifactId>lesscss-maven-plugin</artifactId>
    <version>1.3.3</version>
</plugin>

插件添加好后,就能在 pom.xml ...


2013年 六月 08日 周六 | tags: pi, python, leibniz, walliz, -- (permalink)

前两天和同事在聊天的时候说道了 $pi$ 的算法,回家之后在维基上看了一下关于 $pi$ 的公式,正好这回没事干,就用Python实现了两个比较简单的公式,分别是Leibniz 和 Walliz.

Leibniz

公式如下:

$1 - 1/3 + 1/5 - 1/7 + 1/9 - ... = pi/4$

这个公式也可以用另外一种方式表示:

$pi/4 = sum_{n=0}{oo} (-1)n/(2n+1)$

从公式中能看出来,Leibniz是当n趋向于无穷大的时候,计算 $(-1)^n/(2n+1)$的和,用python代码实现如下:

def leibniz_pi(self, n ...

« Page 2 / 5 »