![Python程序设计基础](https://wfqqreader-1252317822.image.myqcloud.com/cover/423/30058423/b_30058423.jpg)
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
2.3.3 算术运算
Python的算术运算符见表2-2。
表2-2 Python的算术运算符
![](https://epubservercos.yuewen.com/E9F0BA/16523167304945506/epubprivate/OEBPS/Images/txt002_49.jpg?sign=1739272451-bOAfw19sbSbs376JpdzO56Ud7i3QAVVv-0-b3f4528ddc138b67b7b96b5f403ac08a)
算术运算符的优先级,按照从低到高排列(同一行优先级相同)如下:
![](https://epubservercos.yuewen.com/E9F0BA/16523167304945506/epubprivate/OEBPS/Images/txt002_50.jpg?sign=1739272451-v4KxuCllsm2t9qKGZFSj3kEA0RoimH6Y-0-019318a65b333f50bd255bd343e90ae6)
再看几个例子:
![](https://epubservercos.yuewen.com/E9F0BA/16523167304945506/epubprivate/OEBPS/Images/txt002_51.jpg?sign=1739272451-3gaob54PpS3kDQthjVRwftM1fyGQ2DCh-0-ffbc5393e8a053df4f8dc99703949547)
以上的例子都是在相同类型之间的数据运算。如果是不同类型之间的数据运算,会发生隐式类型转换。转换规则是:低类型向高类型转换。可以进行算术运算的各种数据类型,从低到高排列为:bool < int < float < complex。例如:
![](https://epubservercos.yuewen.com/E9F0BA/16523167304945506/epubprivate/OEBPS/Images/txt002_52.jpg?sign=1739272451-fMGLIoyVgxuVHLp3FXeJ4tYQ5CmPC8Zz-0-8a1e48681a3a05afaef6053025392207)
常用的Python数学运算类的内置函数见表2-3。
表2-3 常用的Python数学运算类的内置函数
![](https://epubservercos.yuewen.com/E9F0BA/16523167304945506/epubprivate/OEBPS/Images/txt002_53.jpg?sign=1739272451-Kj3aeSG1piM3FetDaLRSgqWgf2iNQN66-0-ead0cf1edde843ec3a7d75cda7f2aaea)
math模块中的函数见表2-4。
表2-4 math模块中的函数
![](https://epubservercos.yuewen.com/E9F0BA/16523167304945506/epubprivate/OEBPS/Images/txt002_54.jpg?sign=1739272451-3a71Um0wNpeuHPswHphREe7p9riWsiVK-0-1d4dbbc187629bb31f77994739fc55de)
math模块中还定义了两个常量。
●math.pi:数学常量π,math.pi = 3.141592653589793。
●math.e:数学常量e,math.e = 2.718281828459045。
使用math模块前要先导入,使用函数时要在函数名前面加上“math.”。例如:
![](https://epubservercos.yuewen.com/E9F0BA/16523167304945506/epubprivate/OEBPS/Images/txt002_56.jpg?sign=1739272451-ouaDb3TUHEyx03IoQ5FKktdz3vuSnvaE-0-f573686ea9799a4661cd11efb162f94a)
如果要频繁使用某单一模块中的函数,为避免每次写模块名的麻烦,也可以按下面方式导入:
![](https://epubservercos.yuewen.com/E9F0BA/16523167304945506/epubprivate/OEBPS/Images/txt002_57.jpg?sign=1739272451-sgmTyvbHVCi13h8XRi2N9342uwhTCyD5-0-b3cc20c693d9f05860b24c675fcff3c4)
这样,就可以像内置函数那样来使用模块函数了。但是多个模块中可能有同名函数,如果都按这种方式导入,会产生名字冲突的问题。