zoukankan      html  css  js  c++  java
  • 06.循环遍历利器 for

    上篇说到除了str list dict..他们本身的用法,还有极为重要的遍历。

    遍历的意思就是不管你str list  dict有多少个字符or元素,都将挨个都拿出了执行一遍

    将这个元素或者字符拿出来是为了什么,肯定是要处理它,或者用到它。

    在列表内元素很多的时候,我们无法记住某个元素在哪里,此时我们就需要用到遍历了。

    最重要的遍历利器:for

    for是什么呢?

    for它就是个循环器 它就是个循环器 它就是个循环器

      写法例如: for i in '123456':

      意思:把 i 这个变量放到 '123456' 这个东西里循环遍历,达到挨个点名

    一般用法(用于直接遍历字符or元素):

    遍历字符串:

    s = 'abcd'
    for i in s:
        print(i)

    遍历列表list(遍历元组tuple与list方式一致):

    list = ['a','b','c','1']
    for i in list:
        print(i)

    遍历字典dict:

    # 遍历字典中的键
    dict = {'a':1,'b':2,'c':3}
    for i in dict.keys():
        print(i)
    # 遍历字典中的值
    dict = {'a':1,'b':2,'c':3}
    for i in dict.values():
        print(i)
    # 遍历字典中的键值对
    dict = {'a':1,'b':2,'c':3}
    for k,v in dict.items():
        print(k,v)

    for用来遍历‘索引’和‘元素or字符’

      这里记住两个方法:

        len()  记录str list tuple dict ...的长度(即字符个数or元素个数)

            range() 生成一个连续的整数序列 

           

           1.前面0,4 代表序列从0开始到4结束(这里注意是左闭右开,左边包含右边不包含,最终结果就是0到3)

          如果前面没有0,就是for i in range(4) 就是默认为0,4

         只有两个数字,第三个数字是控制步长的,不写默认为1,意思就是递增1

        2.后面加了参数2之后步长就变为2了,每次递增2(所以结果是0和2)

    遍历字符串的索引和字符:

    s = 'abc123'
    for i in range(len(s)):
        print(i,s[i])

    遍历列表的索引和字符:

    list = ['1','a','b','b']
    for i in range(len(list)):
        print(i,list[i])

    字典无法根据索引值去查找他的元素,因为他是无序的。

    你当然也可以通过把键都遍历一遍,然后来通过键来得到值

    enumerate() 神器直接得到‘索引’和‘字符or元素’,不再需要range和len

    遍历字符串:

    s = 'abc123'
    for index,i in enumerate(s):
        print(index,i)

    遍历列表(元组一致):

    list = ['a','b','c']
    for index,i in enumerate(list):
        print(index,i)

    遍历字典:

    这里遍历出来是索引和键的位置

    list = {'a':1,'b':2,'c':3}
    for index,i in enumerate(list):
        print(index,i)

    输出:

    结束。

    
    
    
  • 相关阅读:
    帐户当前被锁定,所以用户 sa 登录失败。系统管理员无法将该帐户解锁 解决方法
    Web页中table导出到execl(带模板)
    Jquery选择器
    JS 用window.open()函数,父级页面如何取到子级页面的返回值?
    SQL2008:在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。
    划线标注
    Unity与Android间的交互
    ActiveMQ的配置与使用
    OpenCv的Java,C++开发环境配置
    JDBC的超时原理
  • 原文地址:https://www.cnblogs.com/zhouA/p/15696690.html
Copyright © 2011-2022 走看看