首页 技术资料正文

Python算术运算符及用法详解(chage)

piaodoo 技术资料 2022-08-27 04:09:51 971 0

Python算术运算符及用法详解(chage)

Python算术运算符及用法详解

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

表 1 Python 常用算术运算符适合4到6岁儿童的网课
运算符说明实例结果
+12.45 + 1527.45
-4.56 - 0.264.3
*5 * 3.618.0
/除法(和数学中的规则一样)7 / 23.5
//整除(只保留商的整数部分)7 // 23
%取余,即返回除法的余数7 % 21
**幂运算/次方运算,即返回 x 的 y 次方2 ** 416,即 24
接下来将对表 1 中各个算术运算符的用法逐一讲解。

+ 加法运算符

加法运算符很简单,和数学中的规则一样,请看下面的代码:
m = 10
n = 97
sum1 = m + n

x = 7.2
y = 15.3
sum2 = x + y

print("sum1=%d, sum2=%.2f" % (sum1, sum2) )
运行结果:sum1=107, sum2=22.50

拼接字符串

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

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

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

- 减法运算符

减法运算也和数学中的规则相同,请看代码:
n = 45
m = -n

x = -83.5
y = -x

print(m, ",", y)
运行结果:-45 , 83.5

求负

-除了可以用作减法运算之外,还可以用作求负运算(正数变负数,负数变正数),请看下面的代码:
n = 45
n_neg = -n

f = -83.5
f_neg = -f

print(n_neg, ",", f_neg)
运行结果:-45 , 83.5注意,单独使用+是无效的,不会改变数字的值,例如:
n = 45
m = +n

x = -83.5
y = +x

print(m, ",", y)
运行结果:45 , -83.5

*乘法运算符

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

重复字符串

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

/ 和 // 除法运算符

Python 支持///两个除法运算符,但它们之间是有区别的:
  • /表示普通除法,使用它计算出来的结果和数学中的计算结果相同。
  • //表示整除,只保留结果的整数部分,舍弃小数部分;注意是直接丢掉小数部分,而不是四舍五入。
请看下面的例子:
整数不能除尽
print("23/5 =", 23/5)
print("23//5 =", 23//5)
print("23.0//5 =", 23.0//5)
print("-------------------")

整数能除尽
print("25/5 =", 25/5)
print("25//5 =", 25//5)
print("25.0//5 =", 25.0//5)
print("-------------------")

小数除法
print("12.4/3.5 =", 12.4/3.5)
print("12.4//3.5 =", 12.4//3.5)
运行结果:

23/5 = 4.623//5 = 423.0//5 = 4.0-------------------25/5 = 5.025//5 = 525.0//5 = 5.0-------------------12.4/3.5 = 3.54285714285714312.4//3.5 = 3.0适合4到6岁儿童的网课

从运行结果可以发现:
  • /的计算结果总是小数,不管是否能除尽,也不管参与运算的是整数还是小数。
  • 当有小数参与运算时,//结果才是小数,否则就是整数。
。在某些编程语言中,除以 0 的结果是无穷大(包括正无穷大和负无穷大)。

Python 2.x 中的除法

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

print "----------------"

小数除法
print "18.0/6 =", 18.0/6
print "47.0/7 =", 47.0/7
print "29.5/4.2 =", 29.5/4.2
运行结果:

18/6 = 347/7 = 6----------------18.0/6 = 3.047.0/7 = 6.7142857142929.5/4.2 = 7.02380952381适合4到6岁儿童的网课

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

% 求余运算符

Python % 运算符用来求得两个数相除的余数,包括整数和小数。Python 使用第一个数字除以第二个数字,得到一个整数的商,剩下的值就是余数。对于小数,求余的结果一般也是小数。注意,求余运算的本质是除法运算,所以第二个数字也不能是 0,否则会导致 ZeroDivisionError 错误。Python % 使用示例:
print("-----整数求余-----")
print("15%6 =", 15%6)
print("-15%6 =", -15%6)
print("15%-6 =", 15%-6)
print("-15%-6 =", -15%-6)

print("-----小数求余-----")
print("7.7%2.2 =", 7.7%2.2)
print("-7.7%2.2 =", -7.7%2.2)
print("7.7%-2.2 =", 7.7%-2.2)
print("-7.7%-2.2 =", -7.7%-2.2)

print("---整数和小数运算---")
print("23.5%6 =", 23.5%6)
print("23%6.5 =", 23%6.5)
print("23.5%-6 =", 23.5%-6)
print("-23%6.5 =", -23%6.5)
print("-23%-6.5 =", -23%-6.5)
运行结果:

-----整数求余-----15%6 = 3-15%6 = 315%-6 = -3-15%-6 = -3-----小数求余-----7.7%2.2 = 1.0999999999999996-7.7%2.2 = 1.10000000000000057.7%-2.2 = -1.1000000000000005-7.7%-2.2 = -1.0999999999999996---整数和小数运算---23.5%6 = 5.523%6.5 = 3.523.5%-6 = -0.5-23%6.5 = 3.0-23%-6.5 = -3.5适合4到6岁儿童的网课

从运行结果可以发现两点:
  • 只有当第二个数字是负数时,求余的结果才是负数。换句话说,求余结果的正负和第一个数字没有关系,只由第二个数字决定。
  • %两边的数字都是整数时,求余的结果也是整数;但是只要有一个数字是小数,求余的结果就是小数。
本例中小数求余的四个结果都不精确,而是近似值,这和小数在底层的存储有关系,有兴趣的读者请猛击《小数在内存中是如何存储的,揭秘诺贝尔奖级别的设计(长篇神文)》了解更多。

** 次方(乘方)运算符

Python ** 运算符用来求一个 x 的 y 次方,也即次方(乘方)运算符。由于开方是次方的逆运算,所以也可以使用 ** 运算符间接地实现开方运算。Python ** 运算符示例:
print(&39;----次方运算----&39;)
print(&39;3**4 =&39;, 3**4)
print(&39;2**5 =&39;, 2**5)

print(&39;----开方运算----&39;)
print(&39;81**(1/4) =&39;, 81**(1/4))
print(&39;32**(1/5) =&39;, 32**(1/5))
运行结果:

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

版权声明:

本站所有资源均为站长或网友整理自互联网或站长购买自互联网,站长无法分辨资源版权出自何处,所以不承担任何版权以及其他问题带来的法律责任,如有侵权或者其他问题请联系站长删除!站长QQ754403226 谢谢。

有关影视版权:本站只供百度云网盘资源,版权均属于影片公司所有,请在下载后24小时删除,切勿用于商业用途。本站所有资源信息均从互联网搜索而来,本站不对显示的内容承担责任,如您认为本站页面信息侵犯了您的权益,请附上版权证明邮件告知【754403226@qq.com】,在收到邮件后72小时内删除。本文链接:https://www.piaodoo.com/119534.html

搜索