Általában meg kell találnunk azt az indexet, amelyben az adott érték található. Erre számos módszer létezik, a index()
stb. segítségével. De néha szükség van egy adott érték összes indexének megtalálására, ha az érték többször is előfordul a listában.
Megbeszélünk bizonyos módszereket az adott listában lévő érték indexeinek megtalálására.
Módszer #1 : Naiv módszer
Ezt a feladatot úgy tudjuk elérni, hogy végigmegyünk a listán, és megnézzük, hogy az adott értéket, és csak az érték indexét csatoljuk az új listába, és azt kiírjuk. Ez az alapvető nyers erő módszer a feladat eléréséhez.
test_list
=
print
(
"Original list : "
+
str
(test_list))
res_list
=
for
i
in
range
(
0
,
len
(test_list)) :
if
test_list
=
=
3
:
res_list.append(i)
print
(
"New indices list : "
+
str
(res_list))
Original list : New indices list :
Módszer #2 : A lista megértése
A lista megértése csak a rövidített technika a nyers erő feladat eléréséhez, csak kevesebb kódsort használ a feladat eléréséhez, és így időt takarít meg a programozóknak.
test_list
=
print
(
"Original list : "
+
str
(test_list))
res_list
=
=
=
3
]
print
(
"New indices list : "
+
str
(res_list))
Original list : New indices list :
Módszer #3 : enumerate()
A enumerate()
használatával elérhetjük a hasonló feladatot, ez a technika valamivel gyorsabb, mint a fenti, ezért ajánlott a lista megértési technikával szemben.
test_list
=
print
(
"Original list : "
+
str
(test_list))
res_list
=
print
(
"New indices list : "
+
str
(res_list))
Original list : New indices list :
Módszer #4 : filter()
használata Ez egy újabb módszer, amely alkalmazható az adott feladat eléréséhez, a filter()
általában képes a szűrési feladatok elvégzésére, ezért ebben a helyzetben is használható a feladat eléréséhez.
test_list
=
print
(
"Original list : "
+
str
(test_list))
res_list
=
list
(
filter
(
lambda
x: test_list
=
=
3
,
range
(
len
(test_list))))
print
(
"New indices list : "
+
str
(res_list))
Original list : New indices list :