zoukankan      html  css  js  c++  java
  • 01Python基础_05控制流

      1. if, else, elif

      2. while

     1 # 猜年龄,3次机会
     2 
     3 _age = 25
     4 count = 1
     5 
     6 while True:
     7     print('count:', count)
     8     age = int(input('input age: '))
     9     if age == _age:
    10         print('Right!!!')
    11         break
    12     elif age > _age:
    13         print('Think smaller')
    14     else:
    15         print('Think bigger')
    16     count += 1
    17     if count > 3:
    18         print('Idiot!!!')
    19         break

      while else

     1 while count <= 3:
     2     print('count:', count)
     3     age = int(input('input age: '))
     4     if age == _age:
     5         print('Right!!!')
     6         break
     7     elif age > _age:
     8         print('Think smaller')
     9     else:
    10         print('Think bigger')
    11     count += 1
    12 else:                               #如果while条件不成立执行此处
    13     print('Idiot!!!')

      3. for

     1 for count in range(3):
     2     print('count:', count + 1)
     3     age = int(input('input age: '))
     4     if age == _age:
     5         print('Right!!!')
     6         break
     7     elif age > _age:
     8         print('Think smaller')
     9     else:
    10         print('Think bigger')
    11     count += 1
    12 else:                               #如果while条件不成立执行此处
    13     print('Idiot!!!')

      注:

      当循环正常结束时,循环条件不满足, else 被执行;

      当循环被 break 结束时,循环条件仍然满足, else 不执行。

    1 values = [7, 6, 4, 7, 19, 2, 1]
    2 for x in values:
    3     if x <= 10:
    4         print 'Found:', x
    5         break
    6 else:
    7     print 'All values greater than 10'

      out:Found: 7

      4. break, continue

      break:跳出当前循环

      continue:跳过循环中的余下步,进行下次循环

      5. 列表推导式

      1. 常规列表生成方式

    values = [10, 21, 4, 7, 12]
    squares = []
    for x in values:
        squares.append(x**2)
    print squares

    out:[100, 441, 16, 49, 144]

      2.列表推导式

    values = [10, 21, 4, 7, 12]
    squares = [x**2 for x in values]    #列表推导式
    squares = [x**2 for x in values if x <= 10]    #带条件
    square_set = {x**2 for x in values if x <= 10}    #生成集合
    square_dict = {x: x**2 for x in values if x <= 10}    #生成字典
  • 相关阅读:
    c#使用NPOI导出Excel及往Excel里追加记录
    c#自定义进度条
    游戏中的过程生成——元胞自动机 Celluar Automata 生成洞穴地形
    在Unity(C#)下实现Lazy Theta*寻路
    A*算法改进——Any-Angle Path Planning的Theta*算法与Lazy Theta*算法
    unity下的Line of Sight(LOS)的绘制
    unity中绘制战争迷雾
    unet中可视性检查的一些笔记
    在DirectX11下用Stencil Buffer绘制可视化Depth Complexity
    漏洞复现-CVE-2015-1427-Groovy远程代码执行
  • 原文地址:https://www.cnblogs.com/zhangyide/p/7873841.html
Copyright © 2011-2022 走看看