python运算符表达式本质
1.表达式
是代码的重要组成部分,一个表达式由运算符和操作数两部分组成。
一个表达式就描述了对哪些数据,进行了什么样的操作。
如下就是一个表达式:
sum = 1 + 2
其中,=和+ 都是运算符,=是赋值运算符,+ 是相加运算符,sum,1,2 都是操作数。
这句话的含义是,将1 与 2 相加,并将它们的结果赋值给变量sum。
2.运算符表达式
运算符表达式实现上,是一个成员函数。换句话说,运算符表达式其实是一个语法糖,如果你重载了某个运算符(实现其对应的成员函数),你就可以使用这个运算符的特定表达式(语法糖)来调用重载的函数。
在Python里,万物皆对象。那怕一个整数常量10,它也是一个整数类型的对象。当我们对10进行加法运算的时候,事实上就是调用了10的加法运算函数。如下的例子就很好地证实了我们的结论:
# 定义两个整数,事实上a和b都是整形对象 a = 10 b = 8 # 由于整型重载了加法运算符,即重载了函数__add__ # 在运行阶段, a + b 会被转成a.__add__(b)的形式运行 # 所以如下的两行代码是等价的 c = a + b c = a.__add__(b) # 你甚至可以直接调用数值的__add__函数 # 以下两行代码是等价的 # 思考题:(10)的括号不可去掉,为什么? c = (10).__add__(8) c = 10 + 8
以上就是我们对于python运算符表达式的一些分析和讨论,在开始学习运算符表达式之前,需要小伙伴们先了解python支持重载吗,还不会的可以看看往期文章。
神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试