首页 > 编程语言 >Python算术运算符及用法详解

Python算术运算符及用法详解

时间:2022-10-17 20:47:52浏览次数:70  
标签:运算 Python 运算符 详解 print 2.2 小数

算术运算符也即数学运算符,用来对数字进行数学运算,比如加减乘除。下表列出了 Python 支持所有基本算术运算符。

表 1 Python 常用算术运算符
运算符说明实例结果
+ 12.45 + 15 27.45
- 4.56 - 0.26 4.3
* 5 * 3.6 18.0
/ 除法(和数学中的规则一样) 7 / 2 3.5
// 整除(只保留商的整数部分) 7 // 2 3
% 取余,即返回除法的余数 7 % 2 1
** 幂运算/次方运算,即返回 x 的 y 次方 2 ** 4 16,即 24

接下来将对表 1 中各个算术运算符的用法逐一讲解。

+ 加法运算符

加法运算符很简单,和数学中的规则一样,请看下面的代码:
  1. m = 10
  2. n = 97
  3. sum1 = m + n
  4. x = 7.2
  5. y = 15.3
  6. sum2 = x + y
  7. print("sum1=%d, sum2=%.2f" % (sum1, sum2) )
运行结果:
sum1=107, sum2=22.50

拼接字符串

+用于数字时表示加法,但是当+用于字符串时,它还有拼接字符串(将两个字符串连接为一个)的作用,请看代码:
  1. name = "C语言中文网"
  2. url = "http://c.biancheng.net/"
  3. age = 8
  4. info = name + "的网址是" + url + ",它已经" + str(age) + "岁了。"
  5. print(info)
运行结果:

C语言中文网的网址是http://c.biancheng.net/,它已经8岁了。

str() 函数用来将整数类型的 age 转换成字符串。

- 减法运算符

减法运算也和数学中的规则相同,请看代码:
  1. n = 45
  2. m = -n
  3. x = -83.5
  4. y = -x
  5. print(m, ",", y)
运行结果:
-45 , 83.5

求负

-除了可以用作减法运算之外,还可以用作求负运算(正数变负数,负数变正数),请看下面的代码:
  1. n = 45
  2. n_neg = -n
  3. f = -83.5
  4. f_neg = -f
  5. print(n_neg, ",", f_neg)
运行结果:
-45 , 83.5

注意,单独使用+是无效的,不会改变数字的值,例如:
  1. n = 45
  2. m = +n
  3. x = -83.5
  4. y = +x
  5. print(m, ",", y)
运行结果:
45 , -83.5

*乘法运算符

乘法运算也和数学中的规则相同,请看代码:
  1. n = 4 * 25
  2. f = 34.5 * 2
  3. print(n, ",", f)
运行结果:
100 , 69.0

重复字符串

*除了可以用作乘法运算,还可以用来重复字符串,也即将 n 个同样的字符串连接起来,请看代码:
  1. str1 = "hello "
  2. print(str1 * 4)
运行结果:
hello hello hello hello 

/ 和 // 除法运算符

Python 支持///两个除法运算符,但它们之间是有区别的:
  • /表示普通除法,使用它计算出来的结果和数学中的计算结果相同。
  • //表示整除,只保留结果的整数部分,舍弃小数部分;注意是直接丢掉小数部分,而不是四舍五入。

请看下面的例子:
  1. #整数不能除尽
  2. print("23/5 =", 23/5)
  3. print("23//5 =", 23//5)
  4. print("23.0//5 =", 23.0//5)
  5. print("-------------------")
  6. #整数能除尽
  7. print("25/5 =", 25/5)
  8. print("25//5 =", 25//5)
  9. print("25.0//5 =", 25.0//5)
  10. print("-------------------")
  11. #小数除法
  12. print("12.4/3.5 =", 12.4/3.5)
  13. print("12.4//3.5 =", 12.4//3.5)
运行结果:

23/5 = 4.6
23//5 = 4
23.0//5 = 4.0
-------------------
25/5 = 5.0
25//5 = 5
25.0//5 = 5.0
-------------------
12.4/3.5 = 3.542857142857143
12.4//3.5 = 3.0

从运行结果可以发现:
  • /的计算结果总是小数,不管是否能除尽,也不管参与运算的是整数还是小数。
  • 当有小数参与运算时,//结果才是小数,否则就是整数。

需要注意的是,除数始终不能为 0,除以 0 是没有意义的,这将导致 ZeroDivisionError 错误。在某些编程语言中,除以 0 的结果是无穷大(包括正无穷大和负无穷大)。

Python 2.x 中的除法

Python 2.x 只提供了一种除法运算,就是/,它的行为和大部分编程语言中/的行为是一样的:
  • /两边都是整数时,结果始终是整数;如果不能除尽,就直接舍弃小数部分。
  • /两边有一个是小数时,结果始终是小数;如果恰好除尽,小数部分就是 0。

请看下面的代码:
  1. #整数除法
  2. print "18/6 =", 18/6
  3. print "47/7 =", 47/7
  4. print "----------------"
  5. #小数除法
  6. print "18.0/6 =", 18.0/6
  7. print "47.0/7 =", 47.0/7
  8. print "29.5/4.2 =", 29.5/4.2
运行结果:

18/6 = 3
47/7 = 6
----------------
18.0/6 = 3.0
47.0/7 = 6.71428571429
29.5/4.2 = 7.02380952381

你可以将 Python 2.x 中的/看作 Python 3.x 中///的结合体,因为 Python 2.x 中/的行为有点奇怪,所以 Python 3.x 增加了//运算符,用以规范除法运算的行为。

% 求余运算符

Python % 运算符用来求得两个数相除的余数,包括整数和小数。Python 使用第一个数字除以第二个数字,得到一个整数的商,剩下的值就是余数。对于小数,求余的结果一般也是小数。

注意,求余运算的本质是除法运算,所以第二个数字也不能是 0,否则会导致 ZeroDivisionError 错误。

Python % 使用示例:
  1. print("-----整数求余-----")
  2. print("15%6 =", 15%6)
  3. print("-15%6 =", -15%6)
  4. print("15%-6 =", 15%-6)
  5. print("-15%-6 =", -15%-6)
  6. print("-----小数求余-----")
  7. print("7.7%2.2 =", 7.7%2.2)
  8. print("-7.7%2.2 =", -7.7%2.2)
  9. print("7.7%-2.2 =", 7.7%-2.2)
  10. print("-7.7%-2.2 =", -7.7%-2.2)
  11. print("---整数和小数运算---")
  12. print("23.5%6 =", 23.5%6)
  13. print("23%6.5 =", 23%6.5)
  14. print("23.5%-6 =", 23.5%-6)
  15. print("-23%6.5 =", -23%6.5)
  16. print("-23%-6.5 =", -23%-6.5)
运行结果:

-----整数求余-----
15%6 = 3
-15%6 = 3
15%-6 = -3
-15%-6 = -3
-----小数求余-----
7.7%2.2 = 1.0999999999999996
-7.7%2.2 = 1.1000000000000005
7.7%-2.2 = -1.1000000000000005
-7.7%-2.2 = -1.0999999999999996
---整数和小数运算---
23.5%6 = 5.5
23%6.5 = 3.5
23.5%-6 = -0.5
-23%6.5 = 3.0
-23%-6.5 = -3.5

从运行结果可以发现两点:
  • 只有当第二个数字是负数时,求余的结果才是负数。换句话说,求余结果的正负和第一个数字没有关系,只由第二个数字决定。
  • %两边的数字都是整数时,求余的结果也是整数;但是只要有一个数字是小数,求余的结果就是小数。

本例中小数求余的四个结果都不精确,而是近似值,这和小数在底层的存储有关系,有兴趣的读者请猛击《小数在内存中是如何存储的,揭秘诺贝尔奖级别的设计(长篇神文)》了解更多。

** 次方(乘方)运算符

Python ** 运算符用来求一个 x 的 y 次方,也即次方(乘方)运算符。

由于开方是次方的逆运算,所以也可以使用 ** 运算符间接地实现开方运算。

Python ** 运算符示例:
  1. print('----次方运算----')
  2. print('3**4 =', 3**4)
  3. print('2**5 =', 2**5)
  4. print('----开方运算----')
  5. print('81**(1/4) =', 81**(1/4))
  6. print('32**(1/5) =', 32**(1/5))
运行结果:

----次方运算----
3**4 = 81
2**5 = 32
----开方运算----
81**(1/4) = 3.0
32**(1/5) = 2.0

标签:运算,Python,运算符,详解,print,2.2,小数
From: https://www.cnblogs.com/qlsh/p/16800569.html

相关文章

  • Python位运算符详解
    Python 位运算按照数据在内存中的二进制位(Bit)进行操作,它一般用于底层开发(算法设计、驱动、图像处理、单片机等),在应用层开发(Web开发、Linux运维等)中并不常见。想加快学习......
  • Python赋值运算符(入门必读)
    赋值运算符用来把右侧的值传递给左侧的变量(或者常量);可以直接将右侧的值交给左侧的变量,也可以进行某些运算后再交给左侧的变量,比如加减乘除、函数调用、逻辑运算等。Python......
  • Python比较运算符(关系运算符)
    比较运算符,也称关系运算符,用于对常量、变量或表达式的结果进行大小比较。如果这种比较是成立的,则返回True(真),反之则返回False(假)。True和False都是bool类型,它们专门......
  • Python逻辑运算符及其用法
    高中数学中我们就学过逻辑运算,例如p为真命题,q为假命题,那么“p且q”为假,“p或q”为真,“非q”为真。Python 也有类似的逻辑运算,请看下表:表1Python逻辑运算符及功能......
  • Python三目运算符(三元运算符)用法详解
    我们从一个具体的例子切入本节内容。假设现在有两个数字,我们希望获得其中较大的一个,那么可以使用ifelse语句,例如:ifa>b:max=a;else:max=b;但是 Python ......
  • 一篇搞定Python正则表达式
    ​1.正则表达式语法1.1字符与字符类1特殊字符:.^$?+*{}[]()|以上特殊字符要想使用字面值,必须使用进行转义2字符类  1.包......
  • 10个python经典小游戏(上)-五一嗨起来(动图演示+源码分享)
    这些游戏你玩过几个?​​1.贪吃蛇​​​​2.吃豆人​​​​3.加农炮​​​​4.四子棋​​​​5.FlyBird​​​​6.记忆:数字对拼图游戏(欢迎挑战!用时:2min)​​​​7.乒乓球​......
  • 分支语句和循环语句——循环语句——while详解
    ......
  • Python关键字(保留字)一览表
    保留字是 Python 语言中一些已经被赋予特定意义的单词,这就要求开发者在开发程序时,不能用这些保留字作为标识符给变量、函数、类、模板以及其他对象命名。Python包含的保......
  • python变量的定义和使用
    任何编程语言都需要处理数据,比如数字、字符串、字符等,我们可以直接使用数据,也可以将数据保存到变量中,方便以后使用。变量(Variable)可以看成一个小箱子,专门用来“盛装”程序......