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

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

最新文章

  1. 打破陈规抓痛点,H3 BPM10.0挑战不可能
  2. [LeetCode] Longest Substring with At Most K Distinct Characters 最多有K个不同字符的最长子串
  3. Win7启动修复(Ubuntu删除后进入grub rescue的情况)
  4. 使用spring-test报异常org.springframework.asm.ClassReader.<init>(Unknown Source)
  5. Annotation实战【自定义AbstractProcessor】
  6. EF中限制字段显示长度
  7. 学习使用:before和:after伪元素
  8. EhCache 分布式缓存/缓存集群(转)
  9. SO_REUSEADDR 套接字选项应用
  10. 什么是Cyclomatic Complexity(圈复杂度)?
  11. chrome调试工具高级不完整使用指南(优化篇)
  12. Matplotlib学习笔记(一)
  13. VMware在宿主上没有VMnet0、VMnet8,解决方法
  14. Qt之实现360安全卫士主界面代码开源
  15. [转载] Activiti Tenant Id 字段释疑
  16. JavaScript 之 JavaScript 对象
  17. 笔记五:python字符串
  18. U-Mail如何实现邮件营销自动化?
  19. 是否升级IOS11?IOS11不支持32位程序 查看手机哪些APP不支持
  20. P4291 [HAOI2008]排名系统

热门文章

  1. 项目经验:Glyphicons字体图标改造,制造适合自己项目的字体图标
  2. 理解js继承的6种方式
  3. Javascript专题(三)c.各种轮播--上下滚动轮播(面向对象版本)
  4. 洛谷2018寒假集训tg第二次比赛第二题Princess Principal题解
  5. Vue 3 --安装脚手架、过滤器、生命周期的钩子函数、vue-router基本使用
  6. android SDK manager 无法获取更新版本的解决办法
  7. 018 4Sum 四个数的和
  8. (转)linux磁盘分区fdisk分区和parted分区
  9. easyui datagrid关于分页的问题
  10. ruby firefox23报错:waiting for evaluate.js load failed