Python的range、enumerate和zip函数用法

系统 1859 0

range函数可创建一个整数列表。
如果需要知道当前元素在列表中的索引,推荐用enumerate代替range。
zip函数用于同时遍历多个迭代器。

一、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)
          

使用例子:

            
              for
            
             i 
            
              in
            
             range(5
            
              ):
    
            
            
              print
            
            (i, end=
            
              '
            
            
              '
            
            ) 
            
              #
            
            
              输出:0 1 2 3 4 
            
            
              print
            
            
              ()

            
            
              for
            
             i 
            
              in
            
             range(1,5
            
              ):
    
            
            
              print
            
            (i, end=
            
              '
            
            
              '
            
            ) 
            
              #
            
            
              输出:1 2 3 4 
            
            
              print
            
            
              ()

            
            
              for
            
             i 
            
              in
            
             range(0,5,2
            
              ):
    
            
            
              print
            
            (i, end=
            
              '
            
            
              '
            
            ) 
            
              #
            
            
              输出:0 2 4  
            
            
              print
            
            
              ()

            
            
              for
            
             i 
            
              in
            
             range(0,-5,-1
            
              ):
    
            
            
              print
            
            (i, end=
            
              '
            
            
              '
            
            ) 
            
              #
            
            
              输出:0 -1 -2 -3 -4
            
            
              print
            
            
              ()
fruit_list 
            
            = [
            
              '
            
            
              apple
            
            
              '
            
            , 
            
              '
            
            
              banana
            
            
              '
            
            ,
            
              '
            
            
              pear
            
            
              '
            
            
              ]

            
            
              for
            
             i 
            
              in
            
            
               range(len(fruit_list)):
    
            
            
              print
            
            
              (i, fruit_list[i]) 

            
            
              '''
            
            
              输出:
0 apple
1 banana
2 pear

            
            
              '''
            
          

二、enumerate函数

enumerate函数用于将各种迭代器(如列表、元组或字符串)包装为生成器,生成器每次产生一对输出值,前者表示循环下标,后者表示从迭
代器中获取到的下一个序列元素。一般用在 for 循环当中。
需要知道当前元素在列表中的索引,推荐用enumerate代替range,代码便于简洁和易理解。

语法:

            enumerate(sequence, [start=0])
          

参数:

            
              sequence: 一个序列、迭代器或其他支持迭代对象。
start:下标起始位置。
            
          

使用例子:

            fruit_list = [
            
              '
            
            
              apple
            
            
              '
            
            , 
            
              '
            
            
              banana
            
            
              '
            
            ,
            
              '
            
            
              pear
            
            
              '
            
            
              ]

            
            
              for
            
             i,fruit 
            
              in
            
            
               enumerate(fruit_list):
    
            
            
              print
            
            
              (i, fruit) 

            
            
              '''
            
            
              输出:
0 apple
1 banana
2 pear

            
            
              '''
            
            
              for
            
             i,fruit 
            
              in
            
             enumerate(fruit_list, 1
            
              ):
    
            
            
              print
            
            
              (i, fruit) 

            
            
              '''
            
            
              输出:
1 apple
2 banana
3 pear

            
            
              '''
            
          

三、zip函数

zip函数可以把两个或两个以上的迭代器封装为生成器,以便稍后求值。
生成器会从每个迭代器中获取下一个值,然后把这些值汇聚成元组。

语法:

            zip([iterable, ...])
          

参数:

            iterabl:一个或多个迭代器
          

使用例子:

            index_list = [0, 1, 2, 3, 4
            
              ]
fruit_list 
            
            = [
            
              '
            
            
              apple
            
            
              '
            
            , 
            
              '
            
            
              banana
            
            
              '
            
            ,
            
              '
            
            
              pear
            
            
              '
            
            
              ]


            
            
              for
            
             index,fruit 
            
              in
            
            
               zip(index_list,fruit_list):
    
            
            
              print
            
            
              (index,fruit)

            
            
              '''
            
            
              输出:
0 apple
1 banana
2 pear

            
            
              '''
            
            
              

d 
            
            =
            
               dict(zip(index_list,fruit_list))

            
            
              print
            
            
              (d)

            
            
              '''
            
            
              转换为字典,输出:
{0: 'apple', 1: 'banana', 2: 'pear'}

            
            
              '''
            
          

 


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论