精华内容
下载资源
问答
  • Python enumerate函数

    2020-08-28 22:05:26
    Python enumerate函数 描述 enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。 Python 2.3. 以上版本可用,2.6 添加 start ...

    Python enumerate函数

    描述

    enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。

    Python 2.3. 以上版本可用,2.6 添加 start 参数。

    语法

    以下是 enumerate() 方法的语法:

    enumerate(sequence, [start=0])

    参数

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

    返回值

    返回 enumerate(枚举) 对象。

    例如

    seasons = ['Spring', 'Summer', 'Fall', 'Winter']
    list(enumerate(seasons))
    #结果:[(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')]
    list(enumerate(seasons, start=1))       # 下标从 1 开始
    #结果:[(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')]
    
    展开全文
  • python enumerate函数

    2017-06-12 13:53:51
    python enumerate函数用法 1.在元组中使用 temp = ('lily', 'lucy', 'jim') for i, j in enumerate(temp): print i, j 打印结果是 0 lily 1 lucy 2 jim 2.在字符串中使用 s = 'hello world' for i, j in enumerate...

    python enumerate函数用法

    1.在元组中使用

    temp = ('lily', 'lucy', 'jim')
    for i, j in enumerate(temp):
        print i, j
    

    打印结果是

    0 lily
    1 lucy
    2 jim

    2.在字符串中使用

    s = 'hello world'
    for i, j in enumerate(s):
        print i, j

    打印结果

    0 h
    1 e
    2 l
    3 l
    4 o
    5
    6 w
    7 o
    8 r
    9 l
    10 d

    3.在字典中使用

    d = {'name': 'lily', 'sex': 0, 'age': 11, 'id': 12}
    for i, j in enumerate(d):
        print i, j

    打印结果

    0 id
    1 age
    2 name
    3 sex


    4.在列表中使用

    l = ['to', 'be', 'No.', 1]
    for i, j in enumerate(l):
        print i, j

    打印结果

    0 to
    1 be
    2 No.
    3 1




    展开全文
  • 主要介绍了Python enumerate函数功能与用法,结合实例形式分析了enumerate函数针对列表、字符串遍历操作相关使用技巧,需要的朋友可以参考下
  • python enumerate 函数

    2019-11-05 16:36:08
    enumerate 这是一个有意思的内置函数,本来我们可以通过for i in range(len(list))的方式得到一个 list 的每个元素索引,然后在用 list[i]的方式得到该元素。如果要同时得到元素索引和元素怎么办?就是这样了: &...

    enumerate

    这是一个有意思的内置函数,本来我们可以通过 for i in range(len(list))的方式得到一个 list 的每个元素索引,然后在用 list[i]的方式得到该元素。如果要同时得到元素索引和元素怎么办?就是这样了:

    >>> for i in range(len(week)):
    ...     print week[i]+' is '+str(i)     #注意,i 是 int 类型,如果和前面的用 + 连接,必须是 str 类型
    ... 
    monday is 0
    sunday is 1
    friday is 2

    Python 中提供了一个内置函数 enumerate,能够实现类似的功能

    >>> for (i,day) in enumerate(week):
    ...     print day+' is '+str(i)
    ... 
    monday is 0
    sunday is 1
    friday is 2

    官方文档是这么说的:

    Return an enumerate object. sequence must be a sequence, an iterator, or some other object which supports iteration. The next() method of the iterator returned by enumerate() returns a tuple containing a count (from start which defaults to 0) and the values obtained from iterating over sequence:

    顺便抄录几个例子,供看官欣赏,最好实验一下。

    >>> seasons = ['Spring', 'Summer', 'Fall', 'Winter']
    >>> list(enumerate(seasons))
    [(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')]
    >>> list(enumerate(seasons, start=1))
    [(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')]

    对于这样一个列表:

    >>> mylist = ["qiwsir",703,"python"]
    >>> enumerate(mylist)
    <enumerate object at 0xb74a63c4>    

    出现这个结果,用 list 就能实现转换,显示内容.意味着可迭代。

    >>> list(enumerate(mylist))
    [(0, 'qiwsir'), (1, 703), (2, 'python')]

    再设计一个小问题,练习一下这个函数。

    问题:将字符串中的某些字符替换为其它的字符串。原始字符串"Do you love Canglaoshi? Canglaoshi is a good teacher.",请将"Canglaoshi"替换为"PHP".

    解析:

    >>> raw = "Do you love Canglaoshi? Canglaoshi is a good teacher."

    这是所要求的那个字符串,当时,不能直接对这个字符串使用 enumerate(),因为它会变成这样:

    >>> list(enumerate(raw))
    [(0, 'D'), (1, 'o'), (2, ' '), (3, 'y'), (4, 'o'), (5, 'u'), (6, ' '), (7, 'l'), (8, 'o'), (9, 'v'), (10, 'e'), (11, ' '), (12, 'C'), (13, 'a'), (14, 'n'), (15, 'g'), (16, 'l'), (17, 'a'), (18, 'o'), (19, 's'), (20, 'h'), (21, 'i'), (22, '?'), (23, ' '), (24, 'C'), (25, 'a'), (26, 'n'), (27, 'g'), (28, 'l'), (29, 'a'), (30, 'o'), (31, 's'), (32, 'h'), (33, 'i'), (34, ' '), (35, 'i'), (36, 's'), (37, ' '), (38, 'a'), (39, ' '), (40, 'g'), (41, 'o'), (42, 'o'), (43, 'd'), (44, ' '), (45, 't'), (46, 'e'), (47, 'a'), (48, 'c'), (49, 'h'), (50, 'e'), (51, 'r'), (52, '.')]

    这不是所需要的。所以,先把 raw 转化为列表:

    >>> raw_lst = raw.split(" ")

    然后用 enumerate()

    >>> for i, string in enumerate(raw_lst):
    ...     if string == "Canglaoshi":
    ...         raw_lst[i] = "PHP"
    ... 

    没有什么异常现象,查看一下那个 raw_lst 列表,看看是不是把"Canglaoshi"替换为"PHP"了。

    >>> raw_lst
    ['Do', 'you', 'love', 'Canglaoshi?', 'PHP', 'is', 'a', 'good', 'teacher.']

    只替换了一个,还有一个没有替换。为什么?仔细观察发现,没有替换的那个是'Canglaoshi?',跟条件判断中的"Canglaoshi"不一样。

    修改一下,把条件放宽:

    >>> for i, string in enumerate(raw_lst):
    ...     if "Canglaoshi" in string:
    ...         raw_lst[i] = "PHP"
    ... 
    >>> raw_lst
    ['Do', 'you', 'love', 'PHP', 'PHP', 'is', 'a', 'good', 'teacher.']

    好的。然后呢?再转化为字符串?留给读者试试。

    展开全文
  • 主要介绍了Python enumerate函数遍历数据对象组合过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
  • enumerate函数说明:enumerate()是python的内置函数enumerate在字典上是枚举、列举的意思函数原型:enumerate(sequence, [start=0])功能:将可循环序列sequence以start开始分别列出序列数据和数据下标即对一个可遍历...

    enumerate函数用于遍历序列中的元素以及它们的下标。

    enumerate函数说明:

    enumerate()是python的内置函数

    enumerate在字典上是枚举、列举的意思

    函数原型:enumerate(sequence, [start=0])

    功能:将可循环序列sequence以start开始分别列出序列数据和数据下标

    即对一个可遍历的数据对象(如列表、元组或字符串),enumerate会将该数据对象组合为一个索引序列,同时列出数据和数据下标。

    举例说明:

    存在一个sequence,对其使用enumerate将会得到如下结果:

    start sequence[0]

    start+1  sequence[1]

    start+2 sequence[2]......

    适用版本:

    Python2.3+

    Python2.x

    注意:在python2.6以后新增了start参数

    英文解释:

    Return an enumerate object. sequence must be a sequence, an iterator, or some other object which supports iteration. The next() method of the iterator returned by enumerate() returns a tuple containing a count (from start which defaults to 0) and the values obtained from iterating over sequence。

    代码实例:

    enumerate参数为可遍历的变量,如 字符串,列表等; 返回值为enumerate类。

    import string

    s = string.ascii_lowercase

    e = enumerate(s)

    print s

    print list(e)

    输出为:

    abcdefghij

    [(0, 'a'), (1, 'b'), (2, 'c'), (3, 'd'), (4, 'e'), (5, 'f'), (6, 'g'), (7, 'h'), (8, 'i'), (9, 'j')]

    在同时需要index和value值的时候可以使用 enumerate。

    该实例中,line 是个 string 包含 0 和 1,要把1都找出来:

    def xread_line(line):

    return((idx,int(val)) for idx, val in enumerate(line) if val != '0')

    print read_line('0001110101')

    print list(xread_line('0001110101'))

    如果对一个列表,既要遍历索引又要遍历元素时,首先可以这样写:

    list1 = ["这", "是", "一个", "测试"]

    for i in range (len(list1)):

    print i ,list1[i]

    上述方法有些累赘,利用enumerate()会更加直接和优美:

    list1 = ["这", "是", "一个", "测试"]

    for index, item in enumerate(list1):

    print index, item

    >>>

    0 这

    1 是

    2 一个

    3 测试

    enumerate还可以接收第二个参数,用于指定索引起始值,如:

    list1 = ["这", "是", "一个", "测试"]

    for index, item in enumerate(list1, 1):

    print index, item

    >>>

    1 这

    2 是

    3 一个

    4 测试

    补充

    如果要统计文件的行数,可以这样写:

    count = len(open(filepath, 'r').readlines())

    这种方法简单,但是可能比较慢,当文件比较大时甚至不能工作。

    可以利用enumerate():

    count = 0

    for index, line in enumerate(open(filepath,'r')):

    count += 1

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

    本文标题: python enumerate函数的使用方法总结

    本文地址: http://www.cppcns.com/jiaoben/python/211134.html

    展开全文
  • 主要介绍了python enumerate使用方法总结,enumerate函数用于遍历序列中的元素以及它们的下标,有兴趣的可以了解一下
  • 一.Python enumerate 函数介绍 二.Python enumerate 函数使用 1.Python enumerate 函数案例 1 2.Python enumerate 函数案例 2 三.猜你喜欢 零基础 Python 学习路线推荐 : Python 学习目录 >> Python 基础...
  • Python enumerate函数的用法 在python里, enumerate函数将一个可以遍历的对象例如(list, set, string)里的每一个元素与他的索引index同时表示出来。 alist = [1,2,3,4,5] for i, element in enumerate(alist): ...
  • python enumerate 函数用法 enumerate(sesequence, [start=0]) 参数 sequence – 一个序列、迭代器或其他支持迭代对象。 start – 下标起始位置。 返回值 返回 enumerate(枚举) 对象。 实例 以下展示了使用 ...
  • Python enumerate函数无法顺序遍历集合 注意区分***:字符串、列表、元组和集合*** 链接:https://blog.csdn.net/chaipp0607/article/details/74120034
  • Python enumerate函数和index的区别 在这边做个对比: #定义一个数组,其中里面有两个相同的值0.31 list=[0.11,0.31,0.55,0.70,0.23,0.43,0.87,0.99,0.31,0.26,0.65] e_index = [i for i,x in enumerate(list) if ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 51,793
精华内容 20,717
关键字:

pythonenumerate函数

python 订阅