zoukankan      html  css  js  c++  java
  • Python的range、enumerate和zip函数用法

    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'}
    '''
  • 相关阅读:
    ABAP ole方式对EXCEL进行操作
    ABAP 通过视图取数到内表函数
    ABAP 数值类型转换
    ABAP 供应商、工厂对应公里数维护
    deb包转换为rpm包格式
    Linux统计即时网速
    RedHat可用的几处软件源
    linux 技巧:使用 screen 管理你的远程会话
    国内常用Linux镜像站点
    telnet访问出现telnet:Unable to connect to remote host: No route to host
  • 原文地址:https://www.cnblogs.com/gdjlc/p/11503564.html
Copyright © 2011-2022 走看看