栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

接口自动化-python篇:布尔表达式与条件判断

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

接口自动化-python篇:布尔表达式与条件判断

接口自动化-python篇:布尔表达式与条件判断 布尔表达式 什么是布尔表达式?

布尔值有两种:True 和 false ,1为真,非真即假,在python中,‘=’为赋值,==表示判断恒等,!=表示判断不相等;字符串之间的比较根据ASCII码判断,且按顺序比较,从第一位开始比较— a=97 , A=65

# 数值类型判断
print(100>101) # 结果为假
print(100 == 100) # 结果为真
print(100!= 101) # 结果为真
# 字符串判断
print('a' == 'A') # 结果为假

in 和 not in

list1 = [100, 200 ,300, [400, 500]]
print(100 in list1) # 结果为真
print(400 in list1) # 结果为假,因为400 属于子列表,不属于外层的列表
print(100 not in list1) # 结果为假,非真即假,非假即真

and 和 or
and特性:一假为假,全真为真
or特性: 一真为真,全假为假

print(1>2 or 2>1) # 结果为真
print(3>2 and 1>3) # 结果为假
print(3>2 and 5>2 or 1>3) # 结果为真 
print(1>2 and ......)  #程序执行时,只要它能判断式子为假,那么后面的式子就不再执行,直接返回False
print(2>1 or ......)  #程序执行时,只要它能判断式子为真,那么后面的式子就不再执行,直接返回True

not and or 组合条件运用 ,优先级:一般情况下,not > and > or,但是括号可以改变优先级

print(2>1 and 1>2 and not True or 2>1) # 结果为真
# 先判断 not True 为假, 再判断2>1 and 1>2 为假,再使用or 2>1 为真,所以结果为真
条件判断语句

python语句结构有三大类:顺序结构,分支结构,循环结构

顺序结构

所有的顺序结构都需要顶格写,python对于缩进有严格的要求,不需要缩进的地方不能缩进,需要缩紧的地方必须缩进,具体缩进多少无严格要求。默认一般是四个空格

print('hello')
print('python')
分支结构

为了限定用户正规操作,也为了更好的控制程序的逻辑,必须在适当时引入条件结构。Python 条件语句是通过一条或多条语句的执行结果(True 或者 False)来决定执行的代码块

单分支结构:单分支结构逻辑是最简单的分支结构,语法格式如下:

if True:   # 布尔表达式
	print('条件代码')

双分支结构:双分支结构是在原来的单分支结构基础上,除条件为真时做一些事情外,条件为假时还需要继续去做一些事情的分支结构逻辑,语法格式如下:

if 条件表达式:
    代码块1
else :
    代码块2

多分支结构:多分支结构和双分支结构都是对一个条件作出的两种判断,若存在多个条件时,就需要多分支结构。语法格式如下:

if 条件表达式1 :
    代码块1
elif 条件表达式2 :
    代码块2
else :
    代码块3
循环结构

Python 循环结构,程序的循环结构逻辑,循环就是按照一定的条件重复的去做一件事情,当条件不成立时就结束循环的内容
1、while循环:while 关键词后面紧跟的条件表达式决定了循环是够进行下去

while 条件表达式 :
    代码段(包含改变计数器值的语句)

2、while…else…循环:语法结构如下

while 条件表达式 :
    代码块1
    改变计数器的值
else :
    代码块2

3、for 循环:while循环和for循环用于处理不同的问题,while应用在不知道循环次数的情况下,for应用在确定循环次数的情况下;语法如下:

for 临时变量 in 可迭代对象 :
    循环体

4、for…else…:语法如下

for 临时变量 in 可迭代对象 :
    循环体
else :
    代码块2

5、循环结束语句:
Python的循环逻辑控制是依靠for和while这两种语句来实现的。但是,有时不需要把循环执行完,条件合适时需要直接退出循环,这时可以使用break语句。还有一种需求,不需要退出整个循环,而是退出本次循环,可以使用continue语句。这两个语句的区别如下:

1、break用于完全结束一个循环,跳出循环体之行循环后面的语句。
2、continue只是终止本次循环,接着还之行后面的循环。

浅拷贝和深拷贝

浅拷贝和深拷贝只涉及到列表和字段,只针对于可变对象

list1 = [100, 200 ,300]
list2 = list1 # 将list1 赋值给list2 ,对于列表而言赋值相当于起了一个别名,两个变量指向的是同一个对象
list2[1] = 2**5 # 改变list2 索引1的值
print(list2) 
print(list1) # 结果list1 和list2 输出结果相同

若想只改变list2,而不改变list1的话,这边需要引入一个浅拷贝

import copy
list1 = [100, 200 ,300]
list2_new = copy.copy(list1) # 浅拷贝,生成的是一个新的对象
list1_new[1] = 2**8
print(list1)
print(list1_new) # 结果为 list1_new 的值变化,list1的值没有变化

同样可以通过切片来进行复制,相当于浅拷贝

list1 = [100, 200, 300]
list2 = list1[:] # 通过切片来赋值,也是生成了一个新的对象--切片等价于浅拷贝
list2[1] = 300
print(list2,list1)

但是若改变列表中的子列表,而不影响原来的列表的值,使用浅拷贝就不能实现,就需要引入深拷贝

import copy
list1 = [100, 200 ,300, [400, 500]]
list1_new  = copy.deepcopy(list1) # 深拷贝,列表和自列表都是生存的新对象
list1_new[-1][1] = 2**8
print(list1)
print(list1_new)
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/920610.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号