zoukankan      html  css  js  c++  java
  • python学习笔记之--循环for和while

    for循环遍历

    for i in xxx:

        代码块

    i:是一个变量,是把xxx里面的某一个值取出来存到i里面

    xxx:可以是序列(序列包括:列表、元祖、字符串),还可以是迭代对象

    >>> for i in "abc":
    ...     print(i)
    ...
    a
    b
    c

    #调试技巧 例题:求列表[1,2,3,4]的和 打印出每一步的结果

    >>> result =0
    >>> for i in [1,2,3,4]:
    ...     print("i的取值",i)
    ...     result+=i
    ...     print("计算结果",result)
    ...
    i的取值 1
    计算结果 1
    i的取值 2
    计算结果 3
    i的取值 3
    计算结果 6
    i的取值 4
    计算结果 10
    >>> print(result)
    10

    #通过索引循环遍历

    >>> fruits = ['banana','apple','mango']
    >>> for index in range(len(fruits)):
    ...     print(fruits[index])
    ...
    banana
    apple
    mango
    >>>

    以上实例我们使用了内置函数 len() 和 range(),函数 len() 返回列表的长度,即元素的个数。 range返回一个序列的数。

    while循环遍历

    while True:

        代码块

    True:条件,只要条件是True 代码块会永远执行

    死循环应用场景:

        1 服务器端:一般死循环

        2 你也不知道循环多少次的时候就要用到死循环

    >>> a = 0
    >>> while a<=5:
    ...     print(a)
    ...     a+=1   #相当于a=a+1
    ...
    0
    1
    2
    3
    4
    5


    #练习题:

    用死循环实现:

      用户输入数字,判断是奇数还是偶数

      当输入的数字是100的时候,结束第循环

    >>> while 1:
    ...     user_num =int(input("请输入一个数字:"))
    ...     if user_num%2==0:
    ...         print("%s 是偶数" %user_num)   #模板字符串
    ...     else:
    ...         print("%s 是奇数" %user_num)
    ...     if user_num==100:
    ...         break
    ...
    请输入一个数字:2
    2 是偶数
    请输入一个数字:3
    3 是奇数
    请输入一个数字:4
    4 是偶数
    请输入一个数字:5
    5 是奇数
    请输入一个数字:6
    6 是偶数
    请输入一个数字:100
    100 是偶数
    >>>

    break和continue

    break:彻底结束循环
    continue:跳出本次循环,执行下一次

    对比示例:

    >>> for i in range(10):
    ...     if i==3:
    ...         break   #整个for循环结束,>=3的数字不在打印
    ...     print(i)
    ...
    0
    1
    2
    >>> for i in range(10):
    ...     if i==3:
    ...         continue   #跳过i==3这次循环不打印,for循环继续后面的循环
    ...     print(i)
    ...
    0
    1
    2
    4
    5
    6
    7
    8
    9
    >>>

    for/while...else...搭配的诡异用法:

    #没有break
    >>> for i in range(5): ... if i == 3: ... continue ... print(i) ... else: #else语句被执行 ... print("no break") ... 0 1 2 4 no break

    #有break

    >>> for i in range(5):
    ...     if i == 3:
    ...         break
    ...     print(i)
    ... else:   #else没有被执行
    ...     print("no break")
    ...
    0
    1
    2
    >>>

    总结:只要循环体内部没有执行break就会执行else部分的代码
    例:
    
    题目:[1,2,3,4,5,7]你输入一个数字,判断一下是否在这个list中,执行3次这个逻辑。
    
    算法:
    
    1、循环3次 (forfor i in range(3)
    
    2、输入一个数字(input),存到某个变量里
    
    user_num =int(input("请输入一个数字:"))
    
    3、判断这个数字在不在[1,2,3,4,5,7]
    
    desc_list =[1,2,3,4,5,7]
    
    4、如果在,打印一下;不再也打印一下。
    
    if user_num in desc_list:
    
      print("%s 在" %user_num)
    
    else:
    
      print("%s 不在" %user_num ) 
    
    实现:
    
    >>> desc_list =[1,2,3,4,5,7]
    >>> for i in range(3):
    ...     user_num =int(input("请输入一个数字:"))
    ...     if user_num in desc_list:
    ...         print("%s 在" %user_num)#模板字符串表达方式 "%s a number" %1   '1 a number'
    ...     else:
    ...         print("%s 不在" %user_num)
    ...
    请输入一个数字:5
    5 在
    请输入一个数字:2
    2 在
    请输入一个数字:1
    1>>>
  • 相关阅读:
    DLPAR中关于cpu资源的分配
    官网下载storage manager方法
    vsftpd中关于ftpusers和user_list两个文件的说明以及vsftpd.conf中的userlist_enable和userlist_deny两个配置项的解释
    Windows10搭建FTP服务器
    fdisk分区的起始扇区为什么是2048——linux 分区与启动的小故事
    P740SAS卡报错的处理
    linux 下route命令
    实验01:构建FTP服务器
    IBMx86 x3850 7143机器面板PCI灯亮
    css的选择器汇总
  • 原文地址:https://www.cnblogs.com/wenm1128/p/11558072.html
Copyright © 2011-2022 走看看