zoukankan      html  css  js  c++  java
  • 第六章 控制流程


    ## 一、条件判断
    Python通过if-elif-else语句来进行条件判断。

    if后面条件的结果是布尔值。当if条件为真时执行if下面的语句;当if为假时执行else下面的语句;elif与if类似,等同于else if。
    ```python
    sex='未知'
    if sex=='男': #如果if后面的表达式返回True,执行本次代码块
    print('男性')
    elif sex=='女': #如果上一级if判断为False,则执行本次判断,如果elif表达式判断为True,则执行本次代码块
    print('女性')
    else sex=='未知': #如果以上所有判断不满足,执行本代码块
    print('未知性别')
    ```
    运行以上代码块,结果为:未知性别
    ## 二、三木运算
    三木运算是简单的条件判断的简写
    ```python
    x=5
    if x%2==0:
    result='偶数'
    else:
    result='奇数'
    print(result)
    #以上六行代码块是普通条件判断语句
    #以下三行代码块就是以上六行代码块的简单简写,也就是三木运算
    x=5
    result='偶数' if x%2==0 else '奇数'
    #值1 if 判断表达式 else 值2
    #如果表达式表达式返回True,三目运算返回值1,如果表达式表达式返回False,三目运算返回值2
    print(result)
    ```
    ## 三、条件循环
    while 语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务。
    ```python
    i=0 #首先,定义i对象等于0
    while i < 5: #写出一个判断表达式
    print(i) #如果表达式返回True,则打印i值
    i += 1 #使i递增,改变i对象
    #以上四行代码块,返回结果为:
    0
    1
    2
    3
    4
    当i=5时,表达式返回False,则退出循环。
    ```

    ### 1、break
    那么,有没有终止循环的代码呢?
    ```python
    i=0
    while i < 5:
    print(i)
    i += 1
    if i == 3: #当i等于3时,执行break,代表跳出循环,不再执行
    break
    #返回结果为:
    0
    1
    2
    当i等于3时,if 判断语句为True,则执行break退出循环。
    ```
    ### 2、continue
    那么,有没有跳过单次循环的代码呢?
    ```python
    i=0
    while i < 5:
    i += 1
    if i == 3: #当i等于3时,跳出该次循环,执行下一次循环。
    continue
    print(i)
    #返回结果为:
    1
    2
    4
    5
    当i等于3时,跳出该次循环, 即本次不执行while循环语句里的print(i)语句。
    ```
    ### 3、break 和 continue 的区别
    ```python
    i = 0
    while i < 5:
    i += 1
    if i == 3:
    continue
    print(i)
    else: #当while条件返回False,或者说我们的循环正常结束了,则执行else语句,
    print('循环结束了')
    #返回结果为:
    1
    2
    4
    5
    循环结束了
    如果使用continue,能让循环跳过本次循环,让循环正常结束,如果使用的是break,则返回结果为:1 2 ,遇到break则跳出循环,不在执行循环语句了。
    ```

    ## 四、迭代循环
    给定一个list或tuple或str等类型,通过for循环来遍历这个list或tuple或str这些可迭代对象,这种遍历称为迭代。迭代是通过 for ... in 来完成的。
    ### 1、list
    ```python
    for i in ['A','B','C']:
    print(i)
    #返回结果为:
    A
    B
    C
    ```
    ### 2、tuple
    ```python
    for i in (1,'yan','yun'):
    print(i)
    #返回结果为:
    1
    yan
    yun
    ```
    ### 3、str
    ```python
    for i in 'abc':
    print(i)
    #返回结果为:
    a
    b
    c
    ```
    ### 4、dict

    迭代key:
    ```python
    d={'a':1,'b':2,'c':3}
    for key in d:
    print(key)
    #返回结果为:
    a
    b
    c
    ```
    迭代value:
    ```python
    for value in d.values():
    print(value)
    #返回结果为:
    1
    2
    3
    ```
    同时迭代key和value:
    ```python
    for k, v in d.items():
    print(k,v)
    #返回结果为:
    a 1
    b 2
    c 3
    ```
    如何判断一个对象是可迭代对象呢?
    通过collections模块的Iterable类型判断:
    ```python
    from collections import Iterable
    s=isinstance('abc', Iterable) # 判断str是否可迭代
    print(s)
    #返回结果为:True

    l=isinstance([1,2,3], Iterable) # list是否可迭代
    print(l)
    #返回结果为:True

    i=isinstance(123, Iterable) # 整数是否可迭代
    print(i)
    #返回结果为:False
    ```
    ## 五、end参数、range
    ### 1、end参数
    ```python
    print(1)
    print(2)
    #返回结果为:
    1
    2
    那么,end作用如下:
    print(1,end='*** ') # :换行字符串
    print(2)
    #返回结果为:
    1***
    2
    ```
    end可以用于将结果输出到同一行,或者在输出的末尾添加不同的字符。
    ### 2、range函数
    range() 函数可创建一个整数列表,一般用在 for 循环中。

    函数语法是:range(start, stop[, step])

    参数说明:

    - start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);
    - stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5
    - step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)
    ```python
    for i in range(1,10):
    print(i)
    #返回结果为:
    1
    2
    3
    4
    5
    6
    7
    8
    9

    ```

    ## 六、课题练习
    ### 1、打印9*9乘法口诀表
    ### 2、打印range(31)除带7或是7的倍数的数以外的所有数,并注明奇数还是偶数。

    如有问题请留言,谢谢!
  • 相关阅读:
    mysql索引
    springboot mybatis 后台框架平台 shiro 权限 集成代码生成器
    java 企业网站源码模版 有前后台 springmvc SSM 生成静态化
    java springMVC SSM 操作日志 4级别联动 文件管理 头像编辑 shiro redis
    activiti工作流的web流程设计器整合视频教程 SSM和独立部署
    .Net Core中的ObjectPool
    文件操作、流相关类梳理
    .Net Core中的配置文件源码解析
    .Net Core中依赖注入服务使用总结
    消息中间件RabbitMQ(一)
  • 原文地址:https://www.cnblogs.com/yunsi/p/13202022.html
Copyright © 2011-2022 走看看