python输出数组内指定元素的所有索引
时间: 2024-02-17 13:30:55 浏览: 215
可以使用enumerate()函数来实现,代码如下:
```python
arr = [1, 2, 3, 2, 4, 5, 2]
target = 2
indices = [i for i, x in enumerate(arr) if x == target]
print(indices)
```
输出:
```
[1, 3, 6]
```
解释:
- `enumerate(arr)`将数组`arr`转换为带索引的可迭代对象;
- `if x == target`判断元素是否等于目标值;
- `[i for i, x in enumerate(arr) if x == target]`使用列表推导式来生成满足条件的索引列表。
相关问题
使用python库numpy输出数组内小于指定数值的所有元素及索引
可以使用以下代码来输出数组内小于指定数值的所有元素及索引:
```python
import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6])
val = 4
indices = np.where(arr < val)[0]
values = arr[indices]
print('Indices:', indices)
print('Values:', values)
```
这里使用了`np.where()`函数来找出符合条件的元素索引,然后通过索引获取对应的元素值。最后将索引和元素值打印出来。
python 输出数组子序列
在Python中,可以使用切片操作来输出数组的子序列。切片操作可以通过指定起始索引和结束索引来选择数组中的一部分元素。以下是一个示例代码:
```python
arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
# 输出整个数组
print(arr[:])
# 输出从索引2到索引5的子序列
print(arr[2:6])
# 输出从索引0到索引7,步长为2的子序列
print(arr[0:8:2])
# 输出从索引5到末尾的子序列
print(arr[5:])
# 输出从索引倒数第3个到倒数第1个的子序列
print(arr[-3:-1])
```
输出结果:
```
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
[3, 4, 5, 6]
[1, 3, 5, 7]
[6, 7, 8, 9, 10]
[8, 9]
```
阅读全文