python学习-运算符

Posted by 周思进 on December 13, 2020

使用 python 运算符操作的时候,总是会和 C 语言的一些运算符搞混… 做个记录,如下表所示,无表示不支持对应的操作符

操作符 说明 示例 Python结果 C 结果
+ 10+11 21 21
- 10-11 -1 -1
* 10*11 110 110
/ 10/4 2.5 2
// 整除 10//4 2
% 取余 10/4 2 2
** 指数 2**3 8
++ 加1 2++ 3
减1 2– 1
abs 取绝对值 abs(-3) 3 3
fabs 取绝对值 fabs(-3.5) 3.5 3.5

1、C 语言做除法时,如果两个操作数都是正整数,表现的是整除,如果要得到真实值,需要将其中一个操作数转浮点数运算,如10/4.0

2、C 语言没有指数运算符,可以通过 pow(2,3) 实现

3、python 的整除操作是向下取整,如 -9//2 得到的结果是 -5, 而 C 语言 -9/2 得到的结果是 -4,是向0取整。

4、C 语言里,abs 只能操作整数,浮点数只能用 fabs,使用 fabs,需要包含头文件 math.h,而 Python 中的 abs 即可以操作整数,也可以操作浮点数,fabs 类似于 abs,但使用 fabs,需要引入 math 模块,fabs 同样能操作浮点数和整数,但不像 abs 还可以操作复数。


python 浮点数转整数的四种操作运算 int、round、ceil、floor,其中 int 是向0取整,round是四舍五入,math.floor是向下取整,math.ceil向上取整,如下:

示例 说明 Python结果
int(-3.5) 向0取整 -3
int(3.5) 向0取整 3
math.ceil(-3.5) 向上取整 -3
math.ceil(3.5) 向上取整 4
math.floor(-3.5) 向下取整 -4
math.floor(3.5) 向下取整 3
math.round(-3.5) 四舍五入 -4
math.round(-3.4) 四舍五入 -3