2017年1月

诗词

梅花引·荆溪阻雪

蒋捷 宋

白鸥问我泊孤舟,是身留,是心留?心若留时,何事锁眉头?风拍小帘灯晕舞,对闲影,冷清清,忆旧游。
旧游旧游今在否?花外楼,柳下舟。梦也梦也,梦不到,寒水空流。漠漠黄云,湿透木棉裘。都道无人愁似我,今夜雪,有梅花,似我愁。

雨霖铃·寒蝉凄切

柳永 宋

寒蝉凄切,对长亭晚,骤雨初歇。都门帐饮无绪,留恋处,兰舟催发。执手相看泪眼,竟无语凝噎。念去去,千里烟波,暮霭沉沉楚天阔。多情自古伤离别,更那堪,冷落清秋节!今宵酒醒何处?杨柳岸,晓风残月。此去经年,应是良辰好景虚设。便纵有千种风情,更与何人说?

[解决]windows下无法使用curses模块

问题

在windows下无法导入包curses

解决方法

  • http://www.lfd.uci.edu/~gohlke/pythonlibs/#curses上下载对应版本的whl

  • 复制对应的,如_curses.cp35-win32.pyd到对应python目录下的lib/curses文件夹中即可

  • 注意,不能在IDE中使用curses,会报错Redirection is not supported.因为curses只能在terminal中使用

附 python3.5 32位pyd http://mystore0716.oss-cn-hangzhou.aliyuncs.com/tmp/_curses.cp35-win32.pyd

python 装饰器

举例

现有一个函数,我们想测试它的运行时间,一个直接的方法就是更改原函数,记录其开始与结束时间。但这样很暴力,而且在想进行多方面修改时容易混乱,破坏其可读性,不利于程序扩展。这事装饰器就派上用场了。

装饰器

形象的说,Python的装饰器是一个包装函数的函数。在不改变原函数的情况下执行一些其它的操作。例如插入日志、性能测试、事务处理等等。

实例

    def spamrun(fn):
        def sayspam(*args):
                print "spam,spam,spam"
            return sayspam
        @spamrun
        def useful(a,b):
            print a**2+b**2
           
    useful(3,4)


 - 输出:
    spam,spam,spam
 def addspam(fn):
     def new(*args):
            print "spam,spam,spam"
            return fn(*args)
        return new
    @addspam
    def useful(a,b):
        print a**2+b**2     
useful(4,3)



 - 输出: 
    spam,spam,spam
    25

 def addspam(fn):
     def new(*args):
            fn(*args)
            print "spam,spam,spam"
        return new
    @addspam
    def useful(a,b):
        print a**2+b**2     
useful(4,3)

- 输出:
    25
    spam,spam,spam

Notepad++ python环境

运行-> 运行 -> cmd /k python3 "$(FULL_CURRENT_PATH)" & ECHO. & PAUSE & EXIT -> 保存

  • cmd /k python: 表示打开Cmd窗口,运行/k后边的命令,并且执行完毕后保留窗口。此处即python(因为在环境变量里已经添加了Python目录,所以这里不用指定Python程序的目录,就可直接找到)
  • $(FULL_CURRENT_PATH) :Notepad++的宏定义,表示当前文件的完整路径。
  • & 用来连接多条命令
  • ECHO:换行
  • PAUSE: 表示运行结束后暂停(cmd中显示“请按任意键继续. . .”),等待一个按键继续
  • EXIT: 表示“按任意键继续. . .”后,关闭命令行窗口。