獲取python的list中含有重復(fù)值的index方法
關(guān)于怎么獲得,我想其實(shí)網(wǎng)上有很多答案。
list.index( )獲得值的索引值,但是如果list中含有的值一樣,例如含有兩個(gè)11,22,這樣每次獲得的都是第一個(gè)值的位置。
那么怎么去解決這個(gè)問題呢?
下面的程序?qū)@個(gè)問題做了一定的解答
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Author : SundayCoder-俊勇
# @File : listlearn.py
# 怎么獲得list中的相同值的索引值
# 請(qǐng)看下列程序
s = [11, 22, 33, 44, 22, 11]
print s.index(11)
# 此時(shí)輸出0
print s.index(22)
# 此時(shí)輸出1
# 那怎么才能得到11,22相同的值的索引值呢?
# 有人說用dict(字典),這個(gè)方法也可以
# 有人說用defaultdict
# 程序如下:
from collections import defaultdict
d = defaultdict(list)
for k,va in [(v,i) for i,v in enumerate(s)]:
d[k].append(va)
print d
# 輸出的結(jié)果如下:defaultdict(<type 'list'>, {33: [2], 11: [0, 5], 44: [3], 22: [1, 4]})
# 但是有沒有一個(gè)更加簡單的方法呢?
# 有的,那就是”偷梁換柱“,用一個(gè)s1來復(fù)制s。
s1 = s
i = s1.index(11)
s1[i]=55
# 替換s1的11為55(不一定是55只要是列表中沒有的數(shù)值就可以)
# 再打印s1
print s1
# 輸出[55, 22, 33, 44, 22, 11]
# 下一步可以得到11的位置了
print s1.index(11)
# 輸出為:5
以上這篇獲取python的list中含有重復(fù)值的index方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Pygame實(shí)現(xiàn)簡易版趣味小游戲之反彈球
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)簡易版趣味反彈球游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-03-03
Python中一些不為人知的基礎(chǔ)技巧總結(jié)
這篇文章主要給大家總結(jié)介紹了Python中一些不為人知的基礎(chǔ)技巧,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用python具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2018-05-05
python-web根據(jù)元素屬性進(jìn)行定位的方法
這篇文章主要介紹了python-web根據(jù)元素屬性進(jìn)行定位的方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-12-12
Python實(shí)現(xiàn)PS濾鏡功能之波浪特效示例
這篇文章主要介紹了Python實(shí)現(xiàn)PS濾鏡功能之波浪特效,結(jié)合實(shí)例形式分析了Python實(shí)現(xiàn)PS濾鏡波浪特效的原理與相關(guān)操作技巧,需要的朋友可以參考下2018-01-01
python中numpy基礎(chǔ)學(xué)習(xí)及進(jìn)行數(shù)組和矢量計(jì)算
這篇文章主要給大家介紹了python中numpy基礎(chǔ)知識(shí),以及進(jìn)行數(shù)組和矢量計(jì)算的相關(guān)資料,需要的朋友可以參考借鑒,下面來一起看看吧。2017-02-02
Python腳本實(shí)現(xiàn)集群檢測和管理功能
這篇文章主要介紹了Python腳本實(shí)現(xiàn)集群檢測和管理功能,本文講解了實(shí)現(xiàn)想法、開發(fā)工具選擇、經(jīng)驗(yàn)分享、代碼示例等內(nèi)容,需要的朋友可以參考下2015-03-03
Python cookbook(數(shù)據(jù)結(jié)構(gòu)與算法)實(shí)現(xiàn)查找兩個(gè)字典相同點(diǎn)的方法
這篇文章主要介紹了Python實(shí)現(xiàn)查找兩個(gè)字典相同點(diǎn)的方法,涉及Python常見集合運(yùn)算操作技巧,需要的朋友可以參考下2018-02-02

