zoukankan      html  css  js  c++  java
  • Python求列表中某个元素的下标

    一、求列表中某个元素的下标

    def findindex(org, x, pos=-1):
        counts = org.count(x)   #先求出org中包含x的个数
        if counts == 0:    #个数为0,说明不存在x
            print(org, '中没有', x)
        elif counts == 1:   #个数为1,说明结果唯一,直接返回index(x)
            print(org.index(x))
        else:
            '''
            个数大于1时,从下标为0的位置开始查找
            找到一个后,先打印下标位置,再从该位置的下一个位置开始继续查找
            ''' 
            for i in range(counts):    
                pos = org.index(x, pos + 1)
                print(pos,end=' ')
            print()
    
    org = [1, 2, 2, 33, 2, 4, 5, 2]
    findindex(org, 3)
    findindex(org, 2)
    findindex(org, 1)

    查看结果:

    [1, 2, 2, 33, 2, 4, 5, 2] 中没有 3
    1 2 4 7 
    0

    二、通过enumerate()使程序更简洁

    def findindex(org, x):
        result = []
        for k,v in enumerate(org): #k和v分别表示org中的下标和该下标对应的元素
            if v == x:
                result.append(k)
        return result
    
    org = [1, 2, 2, 33, 2, 4, 5, 2]
    print(findindex(org, 3))
    print(findindex(org, 2))
    print(findindex(org, 1))
  • 相关阅读:
    Python入门--14--字典
    Python入门--13--爬虫一
    Python入门--13--递归
    Python入门--12--函数与变量
    Python入门--11--自定义函数
    Python入门--10--序列
    mysql 删除重复记录
    Java 不可编辑的Map
    mysql left join
    mysql 超过5名学生的课
  • 原文地址:https://www.cnblogs.com/jessicaxu/p/7730233.html
Copyright © 2011-2022 走看看