Thursday, August 13, 2009

trac源代码阅读 - 6 python operators

结果在这里: http://docs.python.org/library/operator.html
知道这些, 我们就可以像c那样重载操作符了
这应该也算是descriptor的一种吧

Wednesday, August 05, 2009

trac源代码阅读 - 5 python operators

__add__ == +
>>> class a(object):
... def __or__(self, t):
... return id(t)
... def __add__(self, t):
... return id(t)
...
>>> c = a()
>>> a()+c
13041552
>>> id(c)
13041552




__sub__ == -
>>> class a(object):
... def __or__(self, t):
... return id(t)
... def __add__(self, t):
... return id(t)
... def __sub__(self, t):
... return id(t)
...
>>> c = a()
>>> a()-c
13041552
>>> id(c)
13041552

why? will continue in next post.

trac源代码阅读 - 4 ("|" or operator)

__or__ == |

Error:
>>> a={'a':1, }
>>> b = lambda x: x*2
>>> a | b
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: unsupported operand type(s) for |: 'dict' and 'function'

the first object must has "__or__" method

Right:
>>> class a(object):
...     def __or__(self, t):
...             return id(t)
...
>>> c = a()
>>> d = a()
>>> c|d
13041232
>>> id(c)
13041264
>>> id(d)
13041232
>>> c|""
12492856

Example: (Transformer)

Tuesday, August 04, 2009

innerHTML中, p包含ul的问题

一个dom节点给他innerHTML="<p class='temp'><ul><li>test</li></ul></p>", 其中temp的样式为: .temp {display:none;}, 此时ul元素会被解析到p标签之外, IE, FF, Chrome都是如此, BUG or Standard?

Wednesday, July 22, 2009

trac代码阅读3 - upgrade database

重写IEnvironmentSetupParticipant中的三个方法, 然后记得在__init__.py中import 你的IEnvironmentSetupParticipant实现, 此时安装并启用插件之后, 就会出现: trac-admin /path/to/trac upgrade的提示

Saturday, July 18, 2009

trac代码阅读2 - yield expressions

例:
def test(value = None):
    i = value or 0
    while i < 100:
        yield i
        i += 1
=============>>>>>
>>> s.next()
0
>>> s.next()
1
>>> s.next()
2
>>> s.next()
3


由外部逻辑控制此generator function的执行,  we called it: Semi-Coroutine

Thursday, July 16, 2009

Tuesday, June 30, 2009

Automatic change your IP address in windows

netsh interface ip set address name="本地连接" source=static addr=192.168.0.8 mask=255.255.255.0
netsh interface ip set address name="本地连接" gateway=192.168.0.1 gwmetric=0
netsh interface ip set dns name="本地连接" source=static addr=202.106.0.20 register=PRIMARY
netsh interface ip add dns name="本地连接" addr=202.102.152.3 index=2
netsh interface ip add dns name="本地连接" addr=210.82.5.1 index=3
netsh interface ip set wins name="本地连接" source=static addr=none

Saturday, June 20, 2009

selenium 1.0发布了

一直关注selenium, 但是他的脚本录制功能对js的操作始终是无能为力, selenium 1.0发布之后, 通过试用, 对效果依然感到失望:(,
倒是HtmlUnit, 他的js支持, 包括js框架的支持都是相当不错的, 缺点就是要用java写UI测试用例:(, 
自己动手写一个?

Sunday, March 15, 2009

无废话谈项目经理 - 职责篇

项目经理的职责:
  1.    项目管理控制能力
  2.    每个项目组内部都是存在矛盾的,能够控制项目组的矛盾不被激化
  3.    团队建设

Friday, March 13, 2009

查看linux系统io状态

查看linux系统io状态 vmstat 1

Friday, February 27, 2009

Java编码转换核心

String encoding = "gb2312";
byte b[] = "你".getBytes("gb2312");

ByteToCharConverter convertor =
ByteToCharConverter.getConverter(encoding);
//将byte转到制定编码
char[] c = convertor.convertAll(b);

for (int i = 0; i < c.length; i++) {
System.out.println(c[i]+"--");
}