前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >软件测试|教你拿捏Python运算符(一)

软件测试|教你拿捏Python运算符(一)

原创
作者头像
霍格沃兹测试开发Muller老师
发布2023-02-24 12:53:48
5070
发布2023-02-24 12:53:48
举报
文章被收录于专栏:muller的测试分享

前言

什么是运算符?

举个简单的例子 1 +2 = 3 。 例子中,1 和 2 被称为操作数,+ 称为运算符。

Python支持如下运算符:

  • 算术运算符
  • 比较(关系)运算符
  • 赋值运算符
  • 逻辑运算符
  • 位运算符
  • 成员运算符
  • 身份运算符
  • 三目运算符
  • 运算符优先级

本篇文章我们将主要对算术运算符进行介绍。

算术运算符

算术运算符就是我们常用的加减乘除的运算符,算术运算符列表如下:

运算符

描述

-

*

/

%

返回除法的余数

**

幂运算

//

取整除 - 返回商的整数部分(向下取整)

算术运算符示例:

加减运算符示例

代码语言:python
代码运行次数:0
复制
# 加减运算符
print(1 + 2)   
print(5 - 4)
print(1 + 0.5)    #1.5 返回类型为float
print(3 - 2.0)    #1.0,只要参与运算的有浮点数,返回类型为float
-------------------------------------------------------
输出结果如下:
3
1
1.5
1.0

乘法幂运算示例,与数学计算顺序一致

代码语言:python
代码运行次数:0
复制
print(3 * 3)
print(2 ** 4)
print(2.5 * 3)
print(50 - 5 * 6)  # 先算乘法,再算减法
print((50 - 5 * 6) / 4)  # 有括号,括号优先
print(10 - 2 * 3)  # 先算乘法,在计算减法,计算顺序一样

# *跟字符串做搭配
print('------------------------------------------')
print('-' * 10)  # 打印10个 -

-------------------------------------------------
输出结果如下:
9
16
7.5
20
5.0
4
------------------------------------------
----------

除法运算示例

代码语言:python
代码运行次数:0
复制
print(10 / 2)      # 除法运算返回的都是浮点型
print(6 / 2)       #/: 除以
print(20 / 6)      # 计算机(二进制010101)二进制的有穷性
-----------------------------------------
输出结果如下:
5.0
3.0
3.3333333333333335 

整除运算,向下取整示例,尤其需要注意

代码语言:python
代码运行次数:0
复制
print(11 // 4)     # 整除,向下取整,比实际结果要小的整数,输出结果:2
print(9 // 2)     # 4
print(11 // -3)   # 输出-4,和上代码一样,向下取整,-4比-3小,故输出-4
print(10 // 3)    #//:整除 向下取整 3.6666666666666665 取3
print(-11 / 3)
print(-11 // 3)   #-->向下取整
--------------------------------------
输出结果如下:
2
4
-4
3
-3.6666666666666665
-4

取余运算,计算出模,返回除法余数

代码语言:python
代码运行次数:0
复制
print(10 % 3)    # %:模
print(10 % 3)      #%:模,取整10//3=3余1    3*3=9   10-9=1
print(-11 % 3)     # -11//3=-4     -4*3=-12    -11-(-12)=1
---------------------------------------
输出结果如下;
1
1
1

商和余数,返回商和余数组成的一个元组

代码语言:python
代码运行次数:0
复制
x = 11
y = 3
print(divmod(x,y))       #divmod(x,y)-->(x//y,x%y)-->(商,余数)
print(type(divmod(x, y)))
------------------------------
输出结果如下:
(3, 2)
<class 'tuple'>

常见问题

有的时候我们会遇到这样的问题,计算0.1+0.2的时候,我们得到的结果是0.30000000000000004而不是0.3,出现这种问题的原因是计算机转换为二进制,结果以十进制呈现,计算时出现的精确误差,那我们要怎么去解决这个问题呢?Python提供了内置的decimal模块来解决这个问题,具体使用如下:

代码语言:python
代码运行次数:0
复制
from decimal import Decimal     #从decimal模块中导入Decimal类
print(Decimal('0.1')+Decimal('0.2'))  # 0.3
--------------------------------------------------------------------
输出结果如下:
0.3

总结

本文主要介绍了Python的算术运算符,Python的算术原则与我们日常的数学原则一致,但是我们需要注意的是除法返回的都是浮点数类型,不论是否能整除,都是如此,还有就是除法取模的过程,需要留意。下一篇文章我们将介绍Python的比较运算符。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
    • 算术运算符
      • 常见问题
        • 总结
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档