2011/1229

玩Flask几个月的感受

分类:经验分享 | 发表评论 | 点击量:109次

Flask是10年4月份才发布的mrico web framework, 开发团队Pocoo之前的作品包括但不限于:

都是大名鼎鼎项目,所以我们有理由相信Flask查不到哪里去。很多人拿Jinja 2 或 Werkzeug去整合到自己的框架中,Pocoo团队可能觉得有必要写个东西把Jinja 2 和 Werkzeug整合到一起弄一个完整的web框架出来,于是就有了Flask。

作为一个玩过Django这种大而全的框架的人,我推荐所有玩Django的朋友都试试Flask:

1、你玩过一段时间flask后,回头会对django的了解更深入

2、其实flask玩到后面,你搭好自己的架子后,用起来和Django一样

3、优秀的测试、debug功能

4、Flask的缺点是需要自己搭架子

5、Flask的优点是可以自己搭架子

2011/1222

花花草草

分类:摄影, 日记 | 发表评论(1 条评论) | 点击量:209次

前段时间拾掇了一些容易养的花花草草,房间里绿了不少,share一下

2011-12-22-at-09-49-14-by-delai

常青藤 ,很好养

2011-12-22-at-09-50-39-by-delai

富贵竹,刚买的时候叶子黄了一大片,最近不再继续黄下去了,看来活下来了

2011-12-22-at-09-52-06-by-delai

铁线蕨,喜阴,喜湿,很好看,好养

 

长得像大蒜的水仙,每天都能看到它长高

2011-12-03-at-14-11-02-by-delai

 

2011-12-06-at-21-12-40-by-delai

万年青,样子不错,好养

2011-12-06-at-21-13-16-by-delai

 

2011-12-22-at-09-52-31-by-delai

 

2011/1222

杭州的三轮车

分类:日记 | 发表评论 | 点击量:95次

在文三路一带经常看到,他们都是有党性有高度的三轮车;-)

screen-shot-2011-12-22-at-12-39-54-am

img_1728

img_0554

2011/1201

买房趁现在吧——牛肉面,房价,救市

分类:指点江山, 杂杂的文 | 发表评论 | 点击量:156次

过去一年半的时间,很多事情都变了,唯独浙大玉泉校区门口外东山弄的牛肉面的分量和美味没有变,不过……价钱从7元涨到8元又涨到10元。今年找工作的浙大计算机学院毕业生的起薪普遍比去年高了25%甚至更多。这只是一个缩影,如果我说过去一年半,物价上涨了15%,我估计没人表示太离谱。

而唯独房价,出于众所周知的原因稳中略降。按照货币实际的贬值来算,人民手握的房产实际价钱已然缩水了20%左右。

当前的房价可能体现不了大多数人心理价位,但只要给它机会,体现一下货币的贬值,就像猪肉一样。房价会怎么样?

机会似乎来了:

今天人民网报道:全球七大央行救市 我国释放4000亿元流动性

存款准备金率3年来首度下调

2011/1130

The Zen of Python, by Tim Peters

分类:经验分享 | 发表评论 | 点击量:127次

DelaiMacBook:~ delai$
Python 2.7.2 (v2.7.2:8527427914a2, Jun 11 2011, 15:22:34)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type “help”, “copyright”, “credits” or “license” for more information.
>>> import this

The Zen of Python, by Tim Peters

Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren’t special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one– and preferably only one –obvious way to do it.
Although that way may not be obvious at first unless you’re Dutch.
Now is better than never.
Although never is often better than *right* now.
If the implementation is hard to explain, it’s a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea — let’s do more of those!

2011/1128

校车与热点

分类:指点江山, 杂杂的文 | 发表评论 | 点击量:110次

我不写微博也不怎么看微博,但也能感受到最近校车的事情很热。说来说去无非这几个点:1、我国好多好多年龄比较小的学生上下学交通状况很差。2、西方发达国家特别是这方面很好。3、中_国_政_府向不知名的小国家捐赠校车。其实事情的脉络跟以往很多事情都差不多,再提炼一下就是:1、中国很差。2、美国很好。3、中_国_政_府傻逼加不靠谱

所以,类似这样的社会热点,微博啊新闻啊不看也罢。

但有2个常识,大家应该要知道:

1、如地沟油、孝道缺失、校车以及其他各色问题其实一直存在,它们从来没有不被关注而加剧变得严重,也从来没有因为被关注而得到非常好的解决。现如今的中国,报纸大多没有自己的意见和立场,一切唯“网友”马首是瞻,动不动就“网友们对此表示”。所谓的“网友”们大多在玩微博看名人们在转发啥信息。而微博不像twitter那样平等、扁平,一批粉丝多的人掌握着话语权、决定着今天大家聊什么。所以,所谓的社会热点隔几天就变一个也是再正常不过的了。你会发现:最近突然间全国各地校车(包括运输学生的社会车辆)进入事故高发期,因为关注的人多了,任何相关的事件都被报道出来,但再过一个月,大家就再也不谈校车的事情了。“网民”们的爱心、热心、愤怒从一个角度讲就像男人的高潮一样——来得快去得也快,从另外一个角度讲却像女人的高潮一样——一阵一阵、连续不觉。

2、厚彼薄此、打肿脸充胖子、对外软弱对内强硬向来是我们这个民族的诸多“优良传统”之一。“他们”更是将此发扬光大,对外能让则让,能给则给只求博一个所谓的“好的外部环境”;对内几千个亿的维稳资金花地毫不含糊也不考虑给中小企业减少点负担;做点治标的事情就开始歌功颂德,也不考虑花些精力做点治本的事情。总之一个字:稳!

50年末60年代初大饥荒,全国饿死人数4000万(我奶奶就是死于这场饥荒),比抗战8年死亡人数还多,咱还送粮食给非洲呢!现如今,坐拥三万多亿外汇储备、产能严重过剩的牛逼大国送几十辆校车给外国算什么?这是咱一逛的作风,所以,对此大可不必如此纠结。以古为镜,可以知兴替,多了解点历史咱就不会那么容易上火了。

 

可以预见的是:校车会成为官员们新的计划外收入增长点。

2011/1127

居家男人

分类:日记 | 发表评论 | 点击量:121次

据说男人做家务的时候雄性荷尔蒙下降30%,所以,做了几天居家男人的我现在依然不完全是个男人了。

今天早上睡到9点,起来没一会儿一号店的日用品到了,里面有麦片,刚好可以泡,但开水不怎么热,没泡开。处理完东西戴着耳机去楼下公园跑了几圈,遇到一大叔带领三位大婶打太极(可见大叔是我未来的学习榜样),本想在后面也学习,但发现大叔自己也不大会打,赶紧闪人。

跑完去85度C买早饭,又一时兴起去去附近花鸟市场,买了一堆花花草草:常青藤、像大蒜的水仙、富贵竹,转眼就中午了。

img_2098

现在流行在街边看人家用iPad下象棋

img_2102

小孩子比大人更喜欢花花草草小动物,天性如此?

在小区门口买了点菜后回家烧个午饭、吃完、洗完、伺候一下花花草草、打扫下房间转眼一天就这么过去了~。~

大好青年,大好时光怎么不想着为祖国四化做贡献呢?着实有向王小贱发展的趋势了,完了完了。我该怎么办呀,姐妹们……….. ;-)

2011/1125

[Python] 函数 @ Decorator 的两种使用方式

分类:Coding, Python | 发表评论 | 点击量:103次

python中的@标签看上去有点类似于Java里的@ annotation。其主要功能是用@标签后面的函数(A)对 @标签下面的函数(B)进行一些加工。

它虽然不是非用不可,但能提高代码的可读性,降低耦合度。

方式一:

1
2
3
@A
def f():
    pass

大致等同于 f = A(f)

例子一:

1
2
3
4
5
6
7
8
9
10
11
12
13
def check(f):
    print 'start run check()'
    def new_f():
        print 'hello from new_f'
        f()
    return new_f
 
@check
def func():
    print 'hello from func'
 
func()
func()

执行结果:

1
2
3
4
5
start run check()
hello from new_f
hello from func
hello from new_f
hello from func

这个例子很多说明问题,在@check绑定的时候,func() = check(func) = new_f(),随后每次执行func()实际上调的new_f(),而在new_f()里面调用原来的func函数。

例子二 (实际应用):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#login_check对add_entry函数进行预处理,如果用户已经登陆过才执行真正的add_entry函数。
def login_check(f):
    def new_f():   
        if not session.get('username'):
            app.logger.debug("not login, redirct to login page ")
            return redirect(url_for('login'))
        else:
            '''
	    not f() here, otherwise, equal to "redirect(redirect_url())" in this line,
	    but not "return redirect(redirect_url())", which is supposed to be
            '''
            return f()
    return new_f
@login_check
def add_entry():
     do something

方式二:

1
2
3
4
@A(a, b, c)
 
def f():
    pass

大致等同于  f= A(a, b, c) (f)

也就是:

1
2
3
4
def f():
    pass
decorator = A(a, b, c)
f = decorator(f)

所以,在A函数中,要产生并返回一个所需的decorator函数。

参考:http://.org/dev/peps/pep-0318/#why

 

2011/1114

选举

分类:日记 | 发表评论 | 点击量:173次

毕业后把户口落在城东九堡。今天那边社区来电话告诉我人大要开始选举了,问我要不要去选。我表示不去,那边说:那你得过来签个字,不过也可以回条短信给她做一个弃权声明。

挂了电话,就收到她短信了,类似一个模板,我只要往里面填名字然后回过去即可。

有关部门这方面做得还是很人性化的嘛。

2011/1106

帮老孙越狱

分类:日记 | 发表评论(1 条评论) | 点击量:273次

昨天高中语文老师打给我QQ留言问怎么给iphone越狱,让我把越狱软件发给他。

乖乖~,这可不是有越狱软件就行啊。目前iOS越狱还有点麻烦,一堆事儿要搞,还不是完美越狱,每次重启手机都得连上电脑打开软件引导一次,这个操作跟越狱差不多。所以我得教会一个退休多年的老师学会、懂得如何越狱,还要帮它把其他一堆事情给搞定。

今天下午通过QQ视频,竟然毫无障碍,不到一个小时搞定了。

不得不说,老孙是中国的老头子里面这方面最top的那么几个了。

07年iphone一代、后二代、后iphone4、后macbook,什么叫潮人,这就是潮人呀。