python 输出元素索引(一维数组、字符串、二维数组)
类型一:数组的索引
1.若索引的元素唯一,则利用l.index(target)即可。l为所给数组,target为查找的目标值。
l=[1,2,36,89,45,36,11]
print(l.index(89))
output: 3
需要注意的是,如果索引的值不在数组中,则程序报错。
index()函数是从数组左边开始查找。
当索引的元素不唯一时,该方法只返回找到的第一个元素的索引,下面介绍
2.若索引的元素不唯一,利用enumerate函数。
l=[1,2,36,89,45,36,11]
print(l.index(36))
output: 2
print([i for i ,x in enumerate(l) if x==36])
output: [2,6]
enumerate()函数数组中的元素变为元组,即变为(index,value),利用循环找出所有值即可。
类型二:字符串的索引
1.利用l.find(target)
除了上述说讲的方法外,还有find()函数,用法与index一样,区别就是当查找元素不存在是,find()函数返回-1。
字符串查找中还延伸了几个函数,index()和find()都是从头开始找,返回第一个找到元素,而rindex()和rfind()都是从末尾开始找,返回第一个找到元素。
类型三:二维的索引
1.查找的元素唯一
divmod()函数
divmod()函数把除数和余数运算结果结合起来,返回一个包含商和余数的元组(a // b, a % b)。
divmod(7, 2)
output: (3, 1)
利用这个特性,我们可以进行以下计算:
a=[[1,2,3],[4,5,6],[7,8,9]]
divmod(sum(a, []).index(6), 3)
output: (1, 2)
其中,sum(a, [])的作用是将列表展开,并利用index()函数找出索引,最后用divmod()函数返回行列的索引,3为二维数组的行数:
sum(a, [])
output: [1, 2, 3, 4, 5, 6, 7, 8, 6]
2.查找的元素不唯一
可以通过遍历查找
a=[[1,2,3],[4,5,6],[7,8,6]]
[(i,j) for i in range(len(a)) for j in range(len(a[0])) if a[i][j]==6]
output: [(1, 2), (2, 2)]
python 输出元素索引(一维数组、字符串、二维数组)相关推荐
- 杨桃的Python进阶讲座16——数组array(六)一维数组和二维数组的索引和取值(配详细图解)
本人CSDN博客专栏:https://blog.csdn.net/yty_7 Github地址:https://github.com/yot777/ 在进阶讲座8中讲过数组(矩阵)的维度,我们再看看多 ...
- python一维数组和二维数组_Python numpy实现二维数组和一维数组拼接的方法
Python numpy实现二维数组和一维数组拼接的方法 撰写时间:2017.5.23 一维数组 1.numpy初始化一维数组 a = np.array([1,2,3]); print a.shape ...
- python输入数组_Python输入数组(一维数组、二维数组)
一维数组: arr = input("") //输入一个一维数组,每个数之间使空格隔开 num = [int(n) for n in arr.split()] //将输入每个数以空 ...
- 一维数组和二维数组创建,输出,Arrays.fill()替换
package com.xxx.xxx;import java.util.Arrays;public class demo8 {/*** 1.初始化一维数组 使用一维数组* 2.初始化二维数组 使用二 ...
- android 一维数组遍历,$.each()循环遍历一维数组、二维数组、JSON数据和DOM元素
本文介绍$.each()循环遍历一维数组.二维数组.JSON数据和DOM元素. 请注意在使用JQuery $.each()方法前,要首先引用jquery库文件. $.each()循环遍历一维数组 Jq ...
- python定义二维数组_二维数组的定义、初始化和输出,C语言二维数组详解
本节学习二维数组.二维数组与一维数组相似,但是用法上要比一维数组复杂一点.后面的编程中,二维数组用得很少,因为二维数组的本质就是一维数组,只不过形式上是二维的.能用二维数组解决的问题用一维数组也能解决 ...
- 【C语言】指针表达进阶:指针在一维数组、二维数组的应用(如何用指针表达一维数组、二维数组的元素的地址、元素值)
指针可以替代数组名 1.在一维数组中:int a[9]; int *p=a; 一维数组名指向的是列!(后面总结,迷得话不用慌) 则想要获取a[i]的地址方法:a+i; .p+i; .p[i]; 获取a ...
- 如何利用一维数组实现二维数组的多列自由升降序排序过程详解
如何利用一维数组实现二维数组的多列自由升降序排序过程详解 本例只说明多列排序的实现方式,一维数组的排序已经有过讲解不在赘述.所以本文是在已经完成了一维数组排序的函数封装的基础上完善多列排序的过程的详解 ...
- 二维数组,锯齿数组和集合 C# 一维数组、二维数组(矩形数组)、交错数组(锯齿数组)的使用 C# 数组、多维数组(矩形数组)、锯齿数组(交叉数组)...
二维数组,锯齿数组和集合 一.二维数组 二维数组: 一维数组----豆角 二维数组----表格 定义: 1.一维数组: 数据类型[] 数组变量名 = new 数据类型[数组长度]; 数据类型[] 数组 ...
最新文章
- [unreal4入门系列之十五] UE4中的动态数组:TArray容器
- 关于写博客的原因以及一点个人说明。
- 调用图片文件夹中的任意图片随机显示_他来了,他来了,Mathpix拜拜了~~~文字、表格、公式图片识别神器V0.1测试版...
- html5中如何实现跑马灯效果,h5_实现跑马灯效果
- Variant 数组
- 【网络安全工程师面试合集】安全角度谈UDP、TCP和DHCP协议
- 一些常用的简单的Lambda写法
- (day 36 - 滑动窗口)剑指 Offer 57 - II. 和为s的连续正数序列
- 还在使用集合类完成这些功能?不妨来看看 Guava 集合类!!!
- 20191216每日一句
- C#:实现模糊PID控制算法(附完整源码)
- php 如何查询数组,php
- 分解质因数FZU - 1075
- CRM客户关系管理系统源码 CRM小程序源码
- adams参数化优化设计例子
- SQL Server的3种恢复模式(Simple,Full,Bulk-logged)
- 小白的python学习之路-turtle画不同大小的五角星
- AppScan安全扫描工具-IBM Security App Scan Standard
- 基于无线信号的手势识别研究现状调查
- 22-08-06 西安 尚医通(03)EasyExcel; Spring Cache 、Redis做缓存