zoukankan      html  css  js  c++  java
  • Python入门——循环控制之for循环

    循环控制之for循环

    1、什么是for循环

    ​ 循环就是重复做某件事,for循环是python提供第二种循环机制

    2、为何要有for循环

    ​ 理论上for循环能做的事情,while循环都可以做
    ​ 之所以要有for循环,是因为for循环在循环取值(遍历取值)比while循环更简洁

    3、如何用for循环
    • 语法:

      for 变量名 in 可迭代对象:# 可迭代对象可以是:列表、字典、字符串、元组、集合
          代码1
          代码2
          代码3
          ...
      
    • for循环基本使用之循环取值

    • [ ] ​ 案例1:列表循环取值

      # 简单版
      l = ['1', '2', '3']
      for x in l:  
          print(x) 
          
      # 结果
      1 2 3
      
      # 复杂版:
      l = ['1', '2', '3']
      i=0
      while i < 3:
          print(l[i])
          i+=1
      
      结果:
      1 2 3
      
    • [ ] ​ 案例2:字典循环取值

      # 简单版
      dic={'k1':111,'k2':222,'k3':333}
      for k in dic:
          print(k,dic[k])
      # 结果
      k1 111
      k2 222
      k3 333
      
      # 复杂版:while循环可以遍历字典,太麻烦了
      
    • [ ] ​ 案例3:字符串循环取值

    # 简单版
    msg = 'wo ai ni'
    for i in msg:
        print(i)
    # 结果   
    w
    o
    
    a
    i
    
    n
    i
    
    4、for循环与while循环的异同

    1、相同之处:都是循环,for循环可以干的事,while循环也可以干

    2、不同之处:

    while循环称之为条件循环,循环次数取决于条件何时变为假

    for循环称之为"取值循环",循环次数取决in后包含的值的个数

    for x in [1,2,3]:
    
    print('===>')
    print('1111')
    
    # 结果
    ===>
    1111
    ===>
    1111
    ===>
    1111
    
    5、for循环之range

    当循环次数过多时,数据类型包含值的格式需要伴随着增加,所以在in后直接放一个数据类型来控制循环次数有局限性:range

    range功能:

    >>> range(10)
    [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
    >>> 
    >>> range(1,9) # 1...8
    [1, 2, 3, 4, 5, 6, 7, 8]
    >>> 
    >>> range(1,9,1) # 1 2 3 4 5 6 7 8 
    [1, 2, 3, 4, 5, 6, 7, 8]
    >>> range(1,9,2) # 1 3 5 7 
    [1, 3, 5, 7]
    
    # 特性:顾头不顾尾
    
    for i in range(3):
        print("*")
        
    # 结果:
    *
    *
    *
    
    六:for循环应用
    • for + break 的连用,和 while 循环一样,终止for循环只有break一种方案
    • for + else 的连用,和 while 循环一样
    username = 'xxq'
    password = '123'
    count=0
    
    for i in range(3):
        inp_name=input('请输入您的账号:')
        inp_pwd=input('请输入您的密码:')
    
        if inp_name == username and inp_pwd == password:
            print('登录成功')
            break
        else:
            print('帐号或密码错误,请重试')
    else:
        print('输错3次,退出程序')
    
    • for循环嵌套:外层循环 循环一次,内层循环 需要完整的循环完毕
    for i in range(3):
        print('外层循环——>',i)
        for j in range(5):
            print('内层循环——>', j)
            
    # 结果
    外层循环——> 0
    内层循环——> 0
    内层循环——> 1
    内层循环——> 2
    内层循环——> 3
    内层循环——> 4
    外层循环——> 1
    内层循环——> 0
    内层循环——> 1
    内层循环——> 2
    内层循环——> 3
    内层循环——> 4
    外层循环——> 2
    内层循环——> 0
    内层循环——> 1
    内层循环——> 2
    内层循环——> 3
    内层循环——> 4
    
    • for + continue
    for i in range(6):  #0 1 2 3 4 5
        if i == 4:
            continue    #直接跳过4
        print(i)
        
    # 结果
    0
    1
    2
    3
    5
    
    • 换行符与end = ‘’
    print('hello %s' % 'eogn')
    print('hello' ,'world', 'eogn')
    # 结果
    hello eogn
    hello world eogn
    
    print('hello
    ')
    print('world')
    # 结果
    hello
    
    world
    
    print('hello
    ',end='')
    print('world')
    # 结果
    hello
    world
    
    print('hello',end='*')
    print('world',end='*')
    # 结果
    hello*world*
    
  • 相关阅读:
    CURL POST提交json类型字符串数据和伪造IP和来源
    windows下nginx的配置
    常用JS兼容问题工具
    无限级分类--Array写法
    JS获取对象指定属性在样式中的信息
    解决IE和Firefox获取来源网址Referer的JS方法
    异步轮询函数
    响应式布局--特殊设备检测
    jQuery Validate校验
    [LeetCode#124]Binary Tree Maximum Path Sum
  • 原文地址:https://www.cnblogs.com/yding/p/12457353.html
Copyright © 2011-2022 走看看