Guan 发布的文章

快速入门Go(5)


前言

这是我学习Go语法的笔记。由于有C和Python的基础,上手Go很快。笔记很粗糙,好在自己够用。

此篇包括了Go相关的:错误处理,字符串处理,正则,JSON,文本操作。


Python中的切片


前言

一直想把Python切片的知识总结,但拖延至今方才摁键。起因是室友接受了导师给的课题,机器学习相关,之前他一直实习Java,现在要学Python了。有一天他发信息问我关于切片的问题,我竟不能十分肯定的回答。惭愧!但不得不说,Python切片中的Tips是我之前不曾见过,也自然不曾使用的,今日就着外面世界的烟火炮竹,把眼界大开。


Python中的abc模块


前言

《抽象基类(ABC)》中,基于C++讲述抽象基类。尽管Python设计上以鸭子类型为主,但仍有抽象基类(ABC)的一席之地,它被封装在了abc模块中供程序员使用。

abc模块有以下两个主要功能:

  • 某种情况下,判定某个对象的类型,如:isinstance(a, Sized)
  • 强制子类必须实现某些方法,即ABC类的派生类


抽象基类(ABC)


前言

我对抽象基类(Abstract Base Class,ABC)的理解在两个点上。第一点是抽象,即高度抽象;第二点是基类,对抽象基类来说,它的存在只是为了作为基类(区别于具体类),不可以被实例化

高度抽象一词听起来本身就很“抽象”,不妨让我用“总结”这个词进行通俗解释。比方这里有两类人,一类只是聋人,另一类只是盲人。现在我们需要对这两类人抽象,也就是需要总结两类人的相同点+不同点,然后付诸于代码。为方便起见,这里就列举三个行为:散步为相同点,看得见与看不见为不同点,听得见与听不见为不同点——这样一个过程,就是在“抽象”。(好吧,这般解释可能还是抽象)