首页 新闻 会员 周边

python如何获取相同元素下标

0
[已解决问题] 解决于 2023-01-06 17:42

a = '1231'

如上所示, 我有一个元素,我想获取元素中两个“1”的下标,要怎么获取? 下标必须是不重复的

博无止境的主页 博无止境 | 初学一级 | 园豆:153
提问于:2022-08-20 21:15
< >
分享
最佳答案
0

find()索引迭代

a = "1231"

ans = [a.find('1')]
while (ans[-1] != -1):
    ans.append(a.find('1', ans[-1]+1))
print(ans[ :-1])
奖励园豆:5
Nethur.oO | 菜鸟二级 |园豆:207 | 2022-08-25 17:25
其他回答(2)
0
a = '1','2','3','1'
start = -1;
for i in a:
    print(f'{i}, {a.index(i,start)}')
    start+=1
小鸣Cycling | 园豆:350 (菜鸟二级) | 2022-08-20 23:56

不对哦, 正确的下标应该是0123,但是我不知道怎么获取

支持(0) 反对(0) 博无止境 | 园豆:153 (初学一级) | 2022-08-21 00:01

@博无止境: 忘了, 把 start 初始值该成 0

 

 

支持(0) 反对(0) 小鸣Cycling | 园豆:350 (菜鸟二级) | 2022-08-21 06:35

或者枚举列表

 

 

支持(0) 反对(0) 小鸣Cycling | 园豆:350 (菜鸟二级) | 2022-08-21 06:42
0
import numpy as np

a = "1231"
np.where(np.array(list(a)) == "1")
harrylyx | 园豆:202 (菜鸟二级) | 2022-08-25 10:01
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册