数字类型基础——Python表达式操作符——操作符重载和多态性
虽然我们当前关注的是内置数字,但所有的Python操作符都可以通过Python类和C扩展类型来重载/实现,从而被使用于自定义对象。比如,在后面将看到:用类编写的对象可以用 x+y
表达式来相加或连接,用x[i]
表达式来索引等等。
而且,Python本身自动重载了一些操作符,所以它们会根据正在处理的内置对象的类型来执行不同的动作。比如,当应用到数字时,+
操作符执行加法,但当应用到序列对象如字符串和列表时,执行的是连接操作。事实上,当应用到自定义类时,+
完全可以意味着任何操作。
如前一章中所见:这个属性常被称为多态性——一个表明操作符含义取决于正在被操作对象类型的术语。当探索第16章中的函数时,将会重新复习这个概念,因为在那个上下文中,它会变成一个更自然的特性。
推荐文章: