XX学Python·for

  • for循环时遍历数据序列,每次获取一个元素,直到元素全部被获取,结束循环。

    # for循环的语法结构
    """
    for 临时变量 in 数据序列(容器):
        要重复执行的代码
    """
    # 循环逻辑:for循环会依次提取数据序列中的元素,每次提取一个,放入临时变量中储存
    # 在循环体中可使用临时变量,数据序列中有多少个元素,for循环的循环体将会被执行多少次
    str1 = 'helloPython'  # 循环遍历str1  遍历:依次提取每一个元素
    for i in str1:
        print(i)
    
  • for循环和while循环的区别

    • for循环数据序列,元素提取完成自动停止,不需要使用循环变量

    • for循环不需要循环条件,所以也不会有循环条件成立喝不成立的说法

    • 在开发中我们使用for循环的比例居多,while循环主要是构造死循环结构

    • 循环需要配合容器类型(数据序列)进行使用

range(start,stop,[ step])

# range是一个整数序列,可迭代类型,可使用for进行遍历,但没办法直接输出。
# range(起始值,结束值,步长),含起始位置,不含结束位置,即区间为[起始值,结束值)。
for i in range(1, 10):
    print(i)  # 输出1,2,3...9。每个数都换行

print(type(range(1,10)))#类型是 <class 'range'>

# 怎样一次打印range中的所有元素啦?用list
print(list(range(0, 5, 1)))  # 结果为[0,1,2,3,4]
print(list(range(0, 5)))  # 步长可省略,默认为1.结果同上
print(list(range(5)))  # 若起始位置是0则可省。起始位置省,步长也必省。结果同上
print(list(range(10, 3, -1)))  # 步长可为负数,结果[10, 9, 8, 7, 6, 5, 4]
  • for循环小案例

    # 求1-100的累加和
    sum1 = 0
    for i in range(1, 101):
        sum1 += i
    print(f'1-100的累加和为{sum1}')
    
    # 求1-100的偶数累加和
    sum1 = 0
    for i in range(1, 101):
        if i % 2 == 0:
            sum1 += i
    print(f'1-100的偶数累加和为{sum1}')
    
  • for循环里的break和continue

# break 打破循环,后续不在执行
str1 = 'itheima'
for i in str1:
    if i == 'e':
        print('遇到e了,结束循环')
        break
    print(i)
# continue跳出本次循环,进入下一次循环,不会影响循环次数
str1 = 'itheima'
for i in str1:
    if i == 'e':
        print('遇到e了,进入下一次循环')
        continue
    print(i)
'''
案例:用for循环实现用户登录
① 输入用户名和密码
② 判断用户名和密码是否正确(username='admin',password='admin888') 
③ 登录仅有三次机会,超过3次会报错 
'''
# 循环3次
for i in range(3):
    # 获取用户名和密码
    username = input('请输入用户名:')
    password = input('请输入密码:')
    # 比对用户名和密码
    if username == 'admin' and password == 'admin888':
        print('登录成功')
        break
    else:
        print('用户名或密码错误')
    if i == 2:
        print('3次机会用完,账号被冻结')

for循环嵌套

# 用for循环写九九乘法表
for i in range(1, 10):
    for j in range(1, i+1):
        print(F'{j} * {i} = {i*j}', end='\t')
    print()

循环中的else

  • 如果循环正常结束,则执行else中的代码,如果循环异常结束,不执行else中的代码

  • break 可以打破循环造成循环异常结束,continue不会造成循环异常结束

    '''
    while 循环条件:
         条件满足循环执行的代码
    else:
         条件不成立执行的代码,执行后循环结果终止
    
    '''
    
    '''
    for 临时变量 in 数据序列(容器):
        循环执行的代码
    else:
        所有元素遍历完成后执行的代码
    '''
    
posted @ 2022-10-04 22:42  PORTB  阅读(25)  评论(0编辑  收藏  举报