Python4-分支与循环

记录python学习,直到学会基本的爬虫,使用python搭建接口自动化测试就算学会了,在进阶webui自动化,app自动化


python中 有哪些基本值是被当作true或者false的呢?

在Python中,以下值被视为 False:

False —— 布尔假值。
None —— 空值。
0, 0.0 —— 数值00.0[], (), {} —— 空的列表、元组和字典。
'' —— 空字符串。
b'' —— 空的字节字符串。
set() —— 空集合。
除了上述值以外,其他所有值都被视为 True,包括但不限于:

True —— 布尔真值。
任何非空的字符串,例如 "hello""0""False"。
任何非零的数值,例如 13.14-2。
任何非空的列表、元组、字典、集合、字节字符串等,例如 [1](1,){"key": "value"}{1, 2, 3}b'hello'。
任何自定义对象的实例,除非该类的 __bool__() 或 __len__() 方法返回了 False0

if语句示例

被视为 False 的情况
if not True:
    print("This won't be printed.")

if []:  # 空列表
    print("This won't be printed.")

if 0:  # 零值
    print("This won't be printed.")
被视为 True 的情况
if True:
    print("This will be printed.")

if "hello":  # 非空字符串
    print("This will be printed.")

if [1, 2, 3]:  # 非空列表
    print("This will be printed.")

if 1:  # 非零值
    print("This will be printed.")

while语句示例

x = 0
while x == 0:
    print("Looping until x is no longer 0")
    x = x + 1
这个循环不会执行,因为空字符串在Python中被视为False
continue_loop = ''
while continue_loop:
    print("This won't be printed.")
    break  # 需要显式的break来退出循环,因为循环条件始终为False

range()函数

class range(start, stop[, step])

开始
start
start 形参的值 (如果该形参未提供则为 0)
结束
stop
stop 形参的值
步长
step
step 形参的值 (如果该形参未提供则为 1)
list1 = [1, 2, 3]
list2 = ['a', 'b', 'c']
for i, j in zip(range(len(list1)), list2):
    print(f"Index {i}: {j}")

for循环

contiune

使用 continue 跳过某些迭代

for i in range(1, 10):
    if i % 2 == 0:
        continue  # 跳过偶数
    print(i)

打印1到9之间的所有奇数,因为当i为偶数时,continue语句会跳过当前迭代。

break

使用 break 退出循环

for i in range(1, 10):
    if i == 5:
        break  # 当 i 等于 5 时退出循环
    print(i)

在打印数字1到4后退出循环,因为当i等于5时,break语句会立即终止循环。

pass

使用 pass 作为占位符

for i in range(3):
    if i == 1:
        pass  # 这里什么也不做
    else:
        print(i)

会打印0和2,因为当i等于1时,pass语句什么也不做,所以只有i不等于1时才会执行print语句。

while循环

continue

这段代码会打印1到9之间的所有奇数,因为当i为偶数时,continue语句会跳过当前迭代。

i = 1
while i < 10:
    if i % 2 == 0:
        i += 1
        continue  # 跳过偶数
    print(i)
    i += 1

break

i = 1
while i < 10:
    if i == 5:
        break  # 当 i 等于 5 时退出循环
    print(i)
    i += 1

这段代码会打印1到4的数字,然后退出循环,因为当i等于5时,break语句会终止循环。

pass

while True:
pass # 这是一个无限循环,什么也不做
实践如下:

  #if选择语句
a=-11
#嵌套if
if a>100:
    print('yes')
#只进入一个分支,也即是相同条件不能出现,会出现问题
elif a>=100:#这里是有问题的
    print('no')
else:
    if a>10:
        print('yes')
    elif a==0:
        print('no')
    else:
        print('negaticve')
#while 循环语句
b=10
#不太明确次数就用whil
# 如果知道明确次数,则用for循环
while b:
    print(b)
    b-=1
#死循环
'''c=-10
while c:
    print(c)
    c-=1'''
print('-----------------')
# for循环,遍历元素
for i in [1,2,3,]:
    print(i)
print('-----------------')
#for特点,每次都是驱动执行一次,range(x,y),从0开始
for i in range(3):
    print(i)
print('-----------------')
for i in range(10,1,-1):
    print(i)
#计算10以内的奇数,可以取模,也可以直接移位
for i in range(10):
    if i%2 == 1:
        print('奇数:',i)
    else:
        print('偶数:',i)
print('---------------')
# 取偶数
# range(start,end,step)step步长
for i in range(0,10,2):
    print("取偶数:",i)
#取奇数
for i in range(1,10,2):
    print("取奇数:",i)
## 无实际意义,没有迭代值

for i in range(-1):
    print(i)
#计算2^0-2^10
for i in range(11):
    print(pow(2,i))
print('----------------')
# 倒序打印10以内的奇数
for i in range(9,0,-2):
    print(i)
print('*****************')
for i in range(10):
    if i%2 == 1:
        print(i)
print('----------------')
# 倒序打印10以内的偶数
for i in range(8,-1,-2):
    print(i)
print('*****************')
for i in range(10):
    if i%2 == 0:
        print(i)
print('++++++++++++++++++')
#循环中contiune break pass关键词
#contiune:跳出本次循环,进行下次循环
for i in range(0,10):
    if i%2:
        continue
    print(i)
else:
    print("不用跳出的循环")
#break:终止本次(最近的)循环,解释本次循环
for i in range(1,10):
    print(i)
    if i==5:
        break
print('++++++++++++++++++')
#pass 占位符,不做任何操作
#计算1000以内被7整除的前20个正整数
count=0
for i in range(7,1000,7):
    count +=1
    print(i)
    if(count==20):
        break#终止当前循环,countinue跳出本次循环,进行下次循环,pass
print('计数器:',count)
#注意点:for没有被break终止,则可以执行后续的else子句,条件是tange(0)也可以执行else子句
for i in range(0):
    if():
        print(i)
        #这里的else已经不是和if对应的,是单独的,看缩进
else:
        print("谢谢谢谢")
print('&&&&&&&&&&&&&&&&&&&&')
#字符串拼接
print(str(1)+','+'abc')
print(type("{}-{}".format(1,'a')))
wd1=100
wd2='abc'
print(f'{wd1}-{wd2}')
print(type(f'{wd1}-{wd2}'))
# 在循环中常用range()函数
print('^^^^^^^^^^^^^^^^^^^^^^^^')
list1 = [1, 2, 3]
list2 = ['a', 'b', 'c']
for i, j in zip(range(len(list1)), list2):
    print(f"Index {i}: {j}")
#顺序语句,从上至下,这个没什么好说的。

终端回显如下:

F:\anaconda\python.exe E:\py_dwtest\分支循环语句.py 
negaticve
10
9
8
7
6
5
4
3
2
1
-----------------
1
2
3
-----------------
0
1
2
-----------------
10
9
8
7
6
5
4
3
2
偶数: 0
奇数: 1
偶数: 2
奇数: 3
偶数: 4
奇数: 5
偶数: 6
奇数: 7
偶数: 8
奇数: 9
---------------
取偶数: 0
取偶数: 2
取偶数: 4
取偶数: 6
取偶数: 8
取奇数: 1
取奇数: 3
取奇数: 5
取奇数: 7
取奇数: 9
1
2
4
8
16
32
64
128
256
512
1024
----------------
9
7
5
3
1
*****************
1
3
5
7
9
----------------
8
6
4
2
0
*****************
0
2
4
6
8
++++++++++++++++++
0
2
4
6
8
不用跳出的循环
1
2
3
4
5
++++++++++++++++++
7
14
21
28
35
42
49
56
63
70
77
84
91
98
105
112
119
126
133
140
计数器: 20
谢谢谢谢
&&&&&&&&&&&&&&&&&&&&
1,abc
<class 'str'>
100-abc
<class 'str'>
^^^^^^^^^^^^^^^^^^^^^^^^
Index 0: a
Index 1: b
Index 2: c

Process finished with exit code 0

目前学到都是一些基础,下次分享写学完顺序、循环、选择等后写一些小作业,该说不说

实践是检验真理的唯一标准

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值