看板 Python 關於我們 聯絡資訊
import difflib a = ['a', 'b', 'c', 'd', 'e', 'f', 'g'] b = ['c', 'd', 'e'] ans = difflib.get_close_matches(a, b, cutoff=0.2) print([a.index(x) for x in ans]) ---- ref: https://docs.python.org/3/library/difflib.html 這不知道能不能符合你的需求。我之前有類似的需求,這個可以解決我的問題 ※ 引述《momo123163 (RT-boy)》之銘言: : 請教各位神手~ : 我有兩個list : A:[a,b,c,d,e,f,g] : B:[c,d,e] : 想透過查找B內的元素在A的位置,但不用for迴圈有什麼高招嗎?取得:[2,3,4]還拜託各位高手教學了! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.226.82.114 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1561026275.A.BC8.html
rexyeah: 上一篇推文的set比較好,我之前需求是要把包含文字的元素 06/20 18:31
rexyeah: 抽出再做後續動作 :) 06/20 18:32
lemon651: 個人覺得dict更好 .index()真的是最差的 06/20 20:52
jasonfghx: god 06/20 23:06
ides13: print([a.index(x) for x in b]) 06/20 23:09