Python 图形开发:PyQt 信号与槽机制

1. 信号与槽机制的引入

在绝大多数 GUI 库中,每个事件的发生往往伴随十分详细的信息,以供开发人员使用。
例如鼠标点击的精确坐标、按钮是通过鼠标按下还是通过空格键按下等等。
然而很多情况下,我们并不需要知道这些行为具体是如何发生的,只需要知道用户想要做些什么。
例如,我们只关心哪个按钮被按下,[......]

阅读全文

Python 优雅编程之 str.format()

1. str.format 的引入

在 Python 中,我们可以使用 + 来连接字符串,在简单情况下这种方式能够很好的工作。但是当我们需要进行复杂的字符串连接时,如果依然使用 + 来完成,不仅会使代码变得晦涩难懂,还会让代码变得难以维护,此时这种方式就显得力不从心了。

例如,我们想打印这样一条[......]

阅读全文

[译]Python 受推崇的 super!

如果你没有被Python内置的 super() 惊艳到,那很有可能是你并没有真正了解它能够做什么,以及如何高效地使用它。
关于 super() 的文章已经有很多了,其中很多文章以失败告终。这篇文章尝试通过以下几种方式来改变这种情形:

  • 提供实际使用的例子
  • 对于工作原理给出清晰的模型
  • 每次都展示出使它[......]

阅读全文

Python 高级编程之初识装饰器

1. 什么是装饰器

装饰器是一种修改函数和类的便捷方式,是Python提供的语法糖。它可以是我们定义的函数(函数装饰器),也可以是一个类(类装饰器)。我们可以使用装饰器快速地修改其它函数或类,而不用改变它们原本的代码,这样一来,我们就可以方便地统一管理某一类函数或者类。

在接下来的文章中,我们主[......]

阅读全文