Python接口自动化测试框架(基础篇)-- 有点意思的运算符

简介: 这篇文章介绍了Python中的各种运算符,包括算术运算符、比较运算符、赋值运算符、逻辑运算符、成员运算符、位运算符和身份运算符,并讨论了运算符的优先级,以及序列类型的相关知识。

前言

运算符,顾名思义,是一定会有一个结果出来,不然算什么?只不过这个结果,不一定是咱们熟知的int,有可能是bool,都有可能需要联合运算才会有结果。那么在python语言编程中,有哪些运算符呢?

image.png

算术运算符

算术,咱们熟知的加减乘除算吧,再高级点就是%取模、//取整除、**幂;它们不一定只能引用在int类型上,例如+、*可以用在可迭代对象<序列类型>,如:str、list、tuple都可以

  • int类型的加减乘除法就不再代码演示了
# + * 可以在序列类型上运行
print("*" * 3) # 输出:***

print("a" + "b") # 输出:"ab"
  • 演示一下取模<取除法的余数>,使用场景:在咱们后台进行分库分表的时候有用过
print(2 % 2) # 输出:0
print(1 % 2) # 输出:1

比较运算符

比较运算,是大于、小于之类的,它们返回的结果却是bool类型,即True非False

print(1 > 3) # 输出:False
  • 等于这类比较运算,是==等等于,比较的是两个变量的值

  • 常常与逻辑运算符组合使用,如:1>2 or 2>3

赋值运算符

这个应该算是学编程最早使用到的运算符,即变量赋值:a=1

  • +=这个赋值运算符,分析一下,左边是+算术运算符,右边是=赋值运算符,优先级当然是算术运算符,那么a=3;a+=1,解读一下就是a先+1再=赋值给a
a = 1
b = 2
c = a + b
c += a

print(c) # 输出:4

逻辑运算符

它有三个关键词:and、or、not,中文翻译就是逻辑与、逻辑或、逻辑非

a = 1
b = 2

# 两头为True则为True,否则一方为False则为False
print(bool(a and b)) # 输出:True

c = 0

# 任意一头为True则为True,两头为False才为False
print(bool(a or c)) # 输出:True

# python中0为False,not取反,False取反则为True
print(bool(c)) # 输出:True

成员运算符

成员运算,只分在和不在,in在则为True,not in不在则为False;常用于序列类型(dict也算)

a = "sdsdfsd"

# 存在则为True,如果明知存在,再加not表示取反
print(bool("s" in a)) # 输出:True
print(bool("s" not in a)) # 输出:False

# 如果明知不存在not in则为True
print(bool("ss" not in a)) # 输出:True

位运算符

这个比较特别,大多是在算法中用到的评率较多,在自动化测试的时候,可能就不常见

身份运算符

它也只有两个可选项,is 和 is not;比较的是变量的引用对象

>>> a = 10
>>> b = 10
>>> print(bool(10 is a))
<stdin>:1: SyntaxWarning: "is" with a literal. Did you mean "=="?
True
>>> print(bool(b is a))
True
>>> print(bool(b is not a))
False
>>> a=11
>>> print(bool(b is not a))
True
  • 如果拿值和变量使用is去判断,则会有语法警告
运算符的优先级

算术运算符> 位运算符> 比较运算符> 等于运算符> 赋值运算符> 身份运算符> 成员运算符> 逻辑运算符

扩展一下:序列类型

image.png

相关文章
|
3天前
|
设计模式 前端开发 JavaScript
自动化测试框架设计原则与最佳实践####
本文深入探讨了构建高效、可维护的自动化测试框架的核心原则与策略,旨在为软件测试工程师提供一套系统性的方法指南。通过分析常见误区,结合行业案例,阐述了如何根据项目特性定制自动化策略,优化测试流程,提升测试覆盖率与执行效率。 ####
18 6
|
3天前
|
人工智能 前端开发 测试技术
探索软件测试中的自动化框架选择与优化策略####
本文深入剖析了当前主流的自动化测试框架,通过对比分析各自的优势、局限性及适用场景,为读者提供了一套系统性的选择与优化指南。文章首先概述了自动化测试的重要性及其在软件开发生命周期中的位置,接着逐一探讨了Selenium、Appium、Cypress等热门框架的特点,并通过实际案例展示了如何根据项目需求灵活选用与配置框架,以提升测试效率和质量。最后,文章还分享了若干最佳实践和未来趋势预测,旨在帮助测试工程师更好地应对复杂多变的测试环境。 ####
14 4
|
8天前
|
机器学习/深度学习 前端开发 测试技术
探索软件测试中的自动化测试框架选择与优化策略####
本文深入探讨了在当前软件开发生命周期中,自动化测试框架的选择对于提升测试效率、保障产品质量的重要性。通过分析市场上主流的自动化测试工具,如Selenium、Appium、Jest等,结合具体项目需求,提出了一套系统化的选型与优化策略。文章首先概述了自动化测试的基本原理及其在现代软件开发中的角色变迁,随后详细对比了各主流框架的功能特点、适用场景及优缺点,最后基于实际案例,阐述了如何根据项目特性量身定制自动化测试解决方案,并给出了持续集成/持续部署(CI/CD)环境下的最佳实践建议。 --- ####
|
9天前
|
Java 测试技术 持续交付
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
本文重点讲解如何搭建App自动化测试框架的思路,而非完整源码。主要内容包括实现目的、框架设计、环境依赖和框架的主要组成部分。适用于初学者,旨在帮助其快速掌握App自动化测试的基本技能。文中详细介绍了从需求分析到技术栈选择,再到具体模块的封装与实现,包括登录、截图、日志、测试报告和邮件服务等。同时提供了运行效果的展示,便于理解和实践。
41 4
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
|
5天前
|
安全 前端开发 测试技术
如何选择合适的自动化安全测试工具
选择合适的自动化安全测试工具需考虑多个因素,包括项目需求、测试目标、系统类型和技术栈,工具的功能特性、市场评价、成本和许可,以及集成性、误报率、社区支持、易用性和安全性。综合评估这些因素,可确保所选工具满足项目需求和团队能力。
|
5天前
|
机器学习/深度学习 SQL 安全
如何确保自动化安全测试的全面性和准确性?
如何确保自动化安全测试的全面性和准确性?
|
4天前
|
存储 Python
Python自动化脚本编写指南
【10月更文挑战第38天】本文旨在为初学者提供一条清晰的路径,通过Python实现日常任务的自动化。我们将从基础语法讲起,逐步引导读者理解如何将代码块组合成有效脚本,并探讨常见错误及调试技巧。文章不仅涉及理论知识,还包括实际案例分析,帮助读者快速入门并提升编程能力。
21 2
|
6天前
|
运维 监控 Python
自动化运维:使用Python脚本简化日常任务
【10月更文挑战第36天】在数字化时代,运维工作的效率和准确性成为企业竞争力的关键。本文将介绍如何通过编写Python脚本来自动化日常的运维任务,不仅提高工作效率,还能降低人为错误的风险。从基础的文件操作到进阶的网络管理,我们将一步步展示Python在自动化运维中的应用,并分享实用的代码示例,帮助读者快速掌握自动化运维的核心技能。
18 3
|
5天前
|
数据采集 IDE 测试技术
Python实现自动化办公:从基础到实践###
【10月更文挑战第21天】 本文将探讨如何利用Python编程语言实现自动化办公,从基础概念到实际操作,涵盖常用库、脚本编写技巧及实战案例。通过本文,读者将掌握使用Python提升工作效率的方法,减少重复性劳动,提高工作质量。 ###
18 1
|
8天前
|
测试技术 API Android开发
探索软件测试中的自动化框架选择与实践####
本文深入探讨了软件测试领域内,面对众多自动化测试框架时,如何依据项目特性和团队需求做出明智选择,并分享了实践中的有效策略与技巧。不同于传统摘要的概述方式,本文将直接以一段实践指南的形式,简述在选择自动化测试框架时应考虑的核心要素及推荐路径,旨在为读者提供即时可用的参考。 ####