for 、whlie、else、break、continue循环用法

for 循环,它常用于遍历字符串、列表、元组、字典、集合等序列类型,逐个获取序列中的各个元素。

for 迭代变量 in 字符串|列表|元组|字典|集合:
    代码块
add = "www.qinjl.com"
# for循环,遍历 add 字符串
for ch in add:
    print(ch, end="")

运行结果为:www.qinjl.com
result = 0
#逐个获取从 1 到 100 这些值,并做累加操作
for i in range(101):
    result += i
print(result)
my_list = [1,2,3,4,5]
# for循环遍历列表
for ele in my_list:
    print('ele =', ele)
my_dic = {'小蓝': "20",
          '小红': "22",
          '小绿': "24"}
# for循环遍历字典
for ele in my_dic:
    print('ele =', ele)

 

 

my_dic = {'小蓝': "20",
          '小红': "22",
          '小绿': "24"}
# for循环遍历items()
for ele in my_dic.items():
    print('ele =', ele)

 

 

my_dic = {'小蓝': "20",
          '小红': "22",
          '小绿': "24"}
# for循环字典的值
for ele in my_dic.values():
    print('ele =', ele)

 

 

 

while语句:

while 条件表达式:
    代码块

○ 当表达式的结果为True时,执行循环体,继续判断表达式的值是否为True

○若是,继续执行循环体,如此周而复始,直到判断表达式的值为False或执行到跳转语句或发生异常时停止循环的执行

○若循环体什么也不执行时,可用pass语句表示

注意:

●while先判断再执行,所以可能循环体可能一次也不执行

●循环中需要包含能改变循环变量值的语句,否则,若表达式的值始终为True,则会造成死循环

●注意对齐,while语句只执行其后的一条或一组同一层次的语句

# 断言出库单为缺货等待状态
    t = time.time()
    flag = True
    while flag:
        if time.time() - t > 120:
            logger.error("查询出库单状态超时")
            break
        time.sleep(5)
        result = OutboundOrder().search_outbound_order()[0]
        customerOrderNos = []
        for p in result["data"]["results"]:
            if p["ksOutboundOrder_outboundOrderStatus"] == "SHORT_WAITING":
                assert p["ksOutboundOrder_abnormal"] == "OUT_OF_STOCK"
                flag = False
            else:
                flag = True
                break

 

break语句:

break语句终止当前循环,转而执行循环之后的语句

如果有两层循环,break只能跳出当前 所在层次循环

for i in range(1,11):
    for j in range(1,11):
        if i*j>=36:
            break
print(i,j)
输出为10,4而不是4,9 

 

continue语句:

continue语句在while循环和for循环中,用来跳过循环体内continue后面的语句,并开始新的一轮循环

for i in range(1,21):
    if i %3 !=0:
        continue
    print(i,end=' ')

 

 

 continue + for循环

continue用于结束当前循环,当前循环后的代码块儿不会在执行。但是整个循环还是会继续下去。

for i in range(5):
    if i == 3:
        print("continue之前的代码,会执行{}".format(i))
        continue
    print("continue之后的代码,不会执行{}".format(i))

 

 

 continue + while循环

i = 5
while i > 0:
    i -= 1
    if i >= 3:
        print("我在continue之前,会执行")
        continue
    print("我在continue之后,不会执行")

 

 

 

posted @ 2022-08-07 14:46  yaya_zhang  阅读(169)  评论(0编辑  收藏  举报