我有一個疑問,假設我有一個列表混合元素列表Pylist = [1,2,3,'a','b','c',2.0,2.2]現在,如果我檢索 1 和 6 的索引值,它會為我提供>>> Pylist[1]2>>> Pylist[6]2.0如果我檢查它們分別返回 int 和 float 的類型,但是當我在其上使用index方法時,將返回相同的索引位置,之后類型不同,索引位置和值也不同,誰能解釋一下>>> Pylist.index(2)1>>> Pylist.index(2.0)1>>>???
3 回答

繁星淼淼
TA貢獻1775條經驗 獲得超11個贊
如果你想獲得索引2.0
值,你可以使用isinstance(Pylist[i], float)
:
[i for i,k in enumerate(Pylist) if isinstance(Pylist[i], float) and Pylist[i] == 2.0] # [6]

搖曳的薔薇
TA貢獻1793條經驗 獲得超6個贊
2您可以使用它來返回每個/的索引2.0:
for i in set(Pylist):
if Pylist.count(i) > 1:
print(" ".join([str(index) for index, value in enumerate(Pylist) if value == el]))
添加回答
舉報
0/150
提交
取消