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

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求列表中某个元素的下标的更多相关文章

  1. python去除列表中重复元素的方法

    列表中元素位置的索引用的是L.index 本文实例讲述了Python去除列表中重复元素的方法.分享给大家供大家参考.具体如下: 比较容易记忆的是用内置的set 1 2 3 l1 = ['b','c', ...

  2. 【381】python 获取列表中重复元素的索引值

    参考:获取python的list中含有重复值的index方法_python_脚本之家 核心思想:建立字典,遍历列表,把列表中每个元素和其索引添加到字典里面 cc = [1, 2, 3, 2, 4] f ...

  3. Python对列表中字典元素排序

    问题起源 json对象a,b a = '{"ROAD": [{"id": 123}, {"name": "no1"}]} ...

  4. python——删除列表中的元素

    在python中,删除列表元素的方法有三种,分别为remove(),del(),pop()函数 (1)remove() >>> name = ['小明','小华','小红','小李' ...

  5. Python 统计列表中重复元素的个数并返回其索引值

    需求:统计列表list1中元素3的个数,并返回每个元素的索引 list1 = [3, 3, 8, 9, 2, 10, 6, 2, 8, 3, 4, 5, 5, 4, 1, 5, 9, 7, 10, 2 ...

  6. Python查找列表中某个元素返回所有下标

    需求 找出list中某一元素并返回所有匹配index值 问题 使用index()只能返回一个下标 >>> cw=[0,1,2,1,1,0,1,0,0,1] >>> ...

  7. python 获得列表中每个元素出现次数的最快方法

    import collections import numpy as np import random import time def list_to_dict(lst): dic = {} for ...

  8. 删除列表中重复元素以及求list中元素个数

    Python 去除列表中重复的元素 来自比较容易记忆的是用内置的set l1 = ['b','c','d','b','c','a','a'] l2 = list(set(l1)) print l2 还 ...

  9. Python 去除列表中重复的元素

    Python 去除列表中重复的元素 来自比较容易记忆的是用内置的set l1 = ['b','c','d','b','c','a','a'] l2 = list(set(l1)) print l2 还 ...

随机推荐

  1. 使用shell脚本分析Nagios的status.dat文件

    前言 Nagios的安装和配置以及批量添加监控服务器在我前面的文章中已经讲的很详细了. 我们知道,Nagios的网页控制页面(一般为http://nagio.domain.com/nagios)里可以 ...

  2. UIDevice的简易说明

    typedef NS_ENUM(NSInteger, UIDeviceOrientation) //设备方向 { UIDeviceOrientationUnknown, UIDeviceOrienta ...

  3. linux文件查找find

    一.locate locate基于数据库索引来查找文件,数据库在开机时一段时间对更新,不会实时更新,数据库存放在(/var/lib/mlocate/mlocate.db),可以用updatedb来手动 ...

  4. Linux系统下强制其他用户下线

    强制其他用户下线命令格式:pkill -kill -t tty 解释: pkill -kill -t 强制其他用户下线命令 tty 强制其他用户下线的TTY 如上强制其他用户下线的命令为: pkill ...

  5. 利用mybatis-generator生成po

    import java.io.File; import java.util.ArrayList; import java.util.List; import org.mybatis.generator ...

  6. jap的教程

    第一个资料:   https://wenku.baidu.com/view/5ca6ce6a1eb91a37f1115cee.html 第二个资料 :http://www.yiibai.com/jpa ...

  7. HDU 6153 A Secret 套路,求解前缀在本串中出现的次数

    http://acm.hdu.edu.cn/showproblem.php?pid=6153 首先相当于翻转两个串,然后求s2前缀在s1中出现的次数. 这是一个套路啦 首先把两个串结合起来,中间加一个 ...

  8. D - 稳住GCD DP

    http://acm.uestc.edu.cn/#/problem/show/923 给定一堆数字,求其所有数字的gcd. 现在要删除最多的数字,使得剩下的数字的gcd和原来的一样. 设dp[i][v ...

  9. oracle 中的null与''

    1.先看看Null与''在oracle中的表现 C:\Users\zen>sqlplus hr/hr SQL Production :: Copyright (c) , , Oracle. Al ...

  10. 张高兴的 .NET Core IoT 入门指南:(四)使用 SPI 进行通信

    什么是 SPI 和上一篇文章的 I2C 总线一样,SPI(Serial Peripheral Interface,串行外设接口)也是设备与设备间通信方式的一种.SPI 是一种全双工(数据可以两个方向同 ...