zoukankan      html  css  js  c++  java
  • 六、python条件/循环

    一、if

    1)if的表示

    if  条件表达式1:

         (缩进)条件满足后要运行的代码

    elif 条件表达式2:

         (缩进)代码2

    elif 条件表达式3:

         (缩进)代码3

    ······

    else:

         (缩进)剩下所有的情况要运行的代码

    注意:一个缩进标准是4个空格,4个空格并不等于1个Tab(要使用空格缩进,不要使用Tab缩进)

               在一个if表达式中,if····elif····else····,如果运行了一个条件,其他的分支就不会再运行了

    zjx_age = input("zjx的年龄:")
    xiaoyanger_age = input("小样儿的年龄:")
    if int(zjx_age) > int(xiaoyanger_age):
        print("zjx比小样儿大")
    elif int(zjx_age) < int(xiaoyanger_age):
        print("zjx比小样儿小")
    else:
        print("两人一样大")

    注意:条件表达式:需要能够返回布尔类型(比较运算、成员运算、身份运算、逻辑运算)

       "",[],{},(),0,False代表条件不成立
    name = 'zhangjx'
    if 'jx' in name:    #成员关系运算符
        print('name字符串中包含jx')
    else:
        print('name字符串中不包含jx')
    
    a = 4
    b = 6
    if a < 10 and b < 10:    #逻辑运算符
        print('a,b都小于10')
    else:
        print('a,b至少有一个大于等于10')
    
    a =[]
    if a:
        print("True")
    else:
        print("False)
    2)if的嵌套
    a = 4
    b = 6
    name=['C++','python','java']
    if a > b:
        print("a大于b")
        if "python" in name:
            print("我要学python")
        else:
            print("我要学C++")
    else:
        print("我要学java")

    二、for

    1)遍历列表、元组、字符串、集合
    songs = ['爱转角','晴天','恋爱达人','明明就','左手指月']
    for item in songs:
        print('正在播放的歌曲:{}'.format(item))
    
    结果:
    正在播放的歌曲:爱转角
    正在播放的歌曲:晴天
    正在播放的歌曲:恋爱达人
    正在播放的歌曲:明明就
    正在播放的歌曲:左手指月

    注意:元组、字符串、集合遍历方式同列表

    for循环里面有个隐藏机制:index + 1

     2)遍历字典

    对字典使用for循环,取到的默认是所有的key
    songs = {'1':'爱转角','2':'晴天','3':'恋爱达人','4':'明明就','5':'左手指月'}
    for item in songs:
        print('正在播放的歌曲:{}'.format(item))
    
    结果:
    正在播放的歌曲:1
    正在播放的歌曲:2
    正在播放的歌曲:3
    正在播放的歌曲:4
    正在播放的歌曲:5

    如何取所有的值?

    songs = {'1':'爱转角','2':'晴天','3':'恋爱达人','4':'明明就','5':'左手指月'}
    for item in songs.values():
        print('正在播放的歌曲:{}'.format(item))
    
    结果:
    正在播放的歌曲:爱转角
    正在播放的歌曲:晴天
    正在播放的歌曲:恋爱达人
    正在播放的歌曲:明明就
    正在播放的歌曲:左手指月

    如何取key和value?

    songs = {'1':'爱转角','2':'晴天','3':'恋爱达人','4':'明明就','5':'左手指月'}
    for key,value in songs.items():
        print('keys:{},values:{}'.format(key,value))
    
    结果:
    keys:1,values:爱转角
    keys:2,values:晴天
    keys:3,values:恋爱达人
    keys:4,values:明明就
    keys:5,values:左手指月
    songs = {'1':'爱转角','2':'晴天','3':'恋爱达人','4':'明明就','5':'左手指月'}
    for a in songs.items():
        print(a)
    
    结果:
    ('1', '爱转角')
    ('2', '晴天')
    ('3', '恋爱达人')
    ('4', '明明就')
    ('5', '左手指月')

    3)for循环嵌套

    songs = ['爱转角','晴天','恋爱达人','明明就']
    my_lists = ['smile','zjx','python','lemon']
    for song in songs:
        for my_list in my_lists:
            print('songs:{},my_list:{}'.format(song,my_list))

    4)循环一个指定的列表

    names = [['zjx','小可',],['花花','钉钉','小米'],['小林','小罗'],['丽丽','萌萌']]
    for group in names :
        print(group)
        for name in group:
            print(name)
    
    结果:
    ['zjx', '小可']
    zjx
    小可
    ['花花', '钉钉', '小米']
    花花
    钉钉
    小米
    ['小林', '小罗']
    小林
    小罗
    ['丽丽', '萌萌']
    丽丽
    萌萌

    5)没有指定的列表

    range(start:end:step):取左不取右,同切片

    for i in range(1,10):
        print(i)

    end控制不换行,等号后可加分隔符

    for i in range(1,10):
        print(i,end=',')   # 1,2,3,4,5,6,7,8,9,

    三、while

    使用场景:

    • 没有具体的变量可以遍历;

    • 不知道具体要循环的次数;

    • 不知道终止的条件;

    • 相当于手工版的for

    语法:

      while  条件:

        代码

    流程:当把while循环下面的子分支执行完毕以后,程序会返回while的条件判断。

    list_1 = ["zjx","learn","python","java","ruby"]
    index=0
    while index < len(list_1):
        print(list_1[index])
        index += 1
    
    结果:
    zjx
    learn
    python
    java
    ruby

    终止循环(可用于for、while):

    • break:终止整个循环,执行循环体之外后面的代码

    list_1 = ["zjx","learn","python","java","ruby"]
    index=0
    while index < len(list_1):
        print(list_1[index])
        index += 1
        if index == 4:
            brea
    
    结果:
    zjx
    learn
    python
    java
    • continue:终止本次循环

    list_1 = ["zjx","learn","python","java","ruby"]
    index=0
    while index < len(list_1):
        print(list_1[index])
        index += 1
        print("执行continue前会执行本句吗?")
        continue
        print("执行continue后会执行本句吗?")

    pass:还不知道具体写什么内容,用pass去占坑,用来保持语法的完整性

  • 相关阅读:
    3574. 乘积数量
    1357. 优质牛肋骨
    1356. 回文质数
    3554. 二进制
    13 vue路由跳转传参
    12 el-form的inline属性
    10 js数组赋值问题
    9 彻底搞懂json字符串和json对象
    8 element自定义卡槽的好处
    7 el-table表格中使用Dropdown 下拉菜单无法显示下拉框的问题
  • 原文地址:https://www.cnblogs.com/zhangjx2457/p/13615732.html
Copyright © 2011-2022 走看看