Talk is Cheap

纸上得来终觉浅,绝知此事要躬行。

上传并发布你自己发明的轮子 - Python PyPI 实践

本文仅讨论上传相关的步骤,关于如何给写一个setup.py 请参阅官方文档: https://docs.python.org/2/distutils/setupscript.html 上传前的注意事项 假设你的包已经开发完成,并且根目录必须要有一个setup.py。 最好有一个README.rst 用来描述你的轮子,虽然这不是必须的,但文档就像内裤,你最好还是要有的。...

Move on to Python 3

Do we want to move on to Python 3? Well, what is your concerns? Here is a slide made by me probably can help you out. (Use the left/right arrow key to navigate back/forward.) Slides Resources...

总结:Python中的异常处理

异常处理在任何一门编程语言里都是值得关注的一个话题,良好的异常处理可以让你的程序更加健壮,清晰的错误信息更能帮助你快速修复问题。在Python中,和不部分高级语言一样,使用了try/except/finally语句块来处理异常,如果你有其他编程语言的经验,实践起来并不难。 异常处理语句 try…excpet…finally 实例代码 1 2 3 4 5 6 7 8 9 10 11 12 ...

Gif截屏工具 - GifCam

如果你需要录制截屏并保存成gif图片格式,那么你一定不能错过GifCam这个神奇的小工具。它虽然只有600K,但功能不可小觑。 GifCam (Gif相机) 是一款免费且非常优秀的视频录制/剪辑的GIF动画制作软件,它的使用非常简单直观,譬如想要将某一小段视频录制成Gif图片,你只需将其窗口的取景框拖放到视频播放的区域,然后按下录制按钮即开始录制。它就像一个摄像机一样能将取景框拍摄下来并保...

Python装饰器的另类用法

之前有比较系统介绍过 Python 的装饰器(请查阅《详解 Python 装饰器》),本文算是一个补充。今天我们一起探讨一下装饰器的另类用法。 语法回顾 开始之前我们再将 Python 装饰器的语法回顾一下。 1 2 3 @decorate def f(...): pass 等同于: 1 2 3 4 def f(...): pass f = decorate(f...

详解Python的装饰器

Python 中的装饰器是你进入 Python 大门的一道坎,不管你跨不跨过去它都在那里。 为什么需要装饰器 我们假设你的程序实现了say_hello()和say_goodbye()两个函数。 1 2 3 4 5 6 7 8 9 def say_hello(): print "hello!" def say_goodbye(): print "hello!" # b...

说说Python中的闭包 - Closure

Python中的闭包不是一个一说就能明白的概念,但是随着你往学习的深入,无论如何你都需要去了解这么一个东西。 闭包的概念 我们尝试从概念上去理解一下闭包。 在一些语言中,在函数中可以(嵌套)定义另一个函数时,如果内部的函数引用了外部的函数的变量,则可能产生闭包。闭包可以用来在一个函数与一组“私有”变量之间创建关联关系。在给定函数被多次调用的过程中,这些私有变量能够保持其持久性。 ...

Python中不尽如人意的断言Assertion

Python Assert 为何不尽如人意 Python中的断言用起来非常简单,你可以在assert后面跟上任意判断条件,如果断言失败则会抛出异常。 1 2 3 4 5 6 7 >>> assert 1 + 1 == 2 >>> assert isinstance('Hello', str) >>> assert isinstance...

Improve Assertion In Python

Why not using Python Assert Assertion in Python is pretty simple, you can assert any condition by assert statement. 1 2 3 4 5 6 7 >>> assert 1 + 1 == 2 >>> assert isinstance('He...

解决 Jenkins中TFS Plugin Mapping错误的问题

问题描述 Once you had update in TFS workspace for Jenkin TFS plugin, you might get error like bellow: 如果你把 Jenkins 中TFS插件更新过,那么你有可能会遇到Mapping错误的问题。 1 2 3 4 5 6 7 8 9 [workspace] $ "C:\Program Files ...