初学 Python2,感觉Python2中的编码问题一直很烦人,无意中看到几篇博文 [^1] [^2],感觉豁然开朗,做成笔记,方便日后查阅。
本文更新于 2020.1.13
虽然 Pycharm 是宇宙第一 Python IDE(不服打脸),但日常总遇到想测试极短代码片段而不想打开 Pycharm 这个庞然大物的情形,这时候用自带的 Python IDLE 吧,不仅不支持语法高亮,还不能自动补全;用 Jupyter Notebook 吧,还要开浏览器等系列步骤,还是不够快;用终端吧,额,算了。
看着手边宇宙第一编辑器 Sublime,心想能不能做成一个支持语法高亮,代码自动补全,简洁快速,颜值爆表的交互式 Python shell 呢?答案是可以的~
Python面向对象特性中最核心的一部分就是类了,花了点时间整理了一下,做成笔记,方便日后翻阅。
定义一个旧式类A:
本文摘自我的笔记Python2笔记—类
在面向对象体系里面,存在两种关系:
__base__
可查看,顶层是object
__class__
查看,顶层为type
。本文摘自我的笔记Python2笔记—类
对一个类,我们要调用它的一个方法,必须要绑定实例,而不能直接通过类名.方法名()
的形式调用。因此,想要通过类来调用方法,而不是通过实例,可以使用静态方法@staticmethod
和类方法@classmethod
的形式实现。
二者的形式:
@classmethod修饰的方法的第一个参数必须是cls。cls指的是类的本身,若有继承出现,cls指当前类。
@staticmethod修饰的方法没有self和cls参数,可以不接受参数
使用情形: