1
值我有兩個列表:如何使用條件從一個列表中找到一個不同的列表
lista = [0,5,0,5,0,5]
listb = ['a','b','c','d','e','f']
是否有當lista
值爲5
,它發現它在相應的方式在listb
這樣的字母'b','d','f'
是結果嗎?
我想過使用zip
來得到它,但我無法弄清楚如何應用條件。
值我有兩個列表:如何使用條件從一個列表中找到一個不同的列表
lista = [0,5,0,5,0,5]
listb = ['a','b','c','d','e','f']
是否有當lista
值爲5
,它發現它在相應的方式在listb
這樣的字母'b','d','f'
是結果嗎?
我想過使用zip
來得到它,但我無法弄清楚如何應用條件。
您可以通過一個條件列表理解這樣做:
lista = [0,5,0,5,0,5]
listb = ['a','b','c','d','e','f']
print ([listb[i] for i,a in enumerate(lista) if a == 5])
您還可以使用numpy的。如果你的數據集很龐大,它會更快。
import numpy as np
lista = np.asarray([0,5,0,5,0,5])
listb = np.asarray(['a','b','c','d','e','f'])
listb[lista==5]
當我鍵入它時出現'bool'對象不可迭代的錯誤 – Clemetron3000
只用兩種語言對它進行了測試。它工作正常。確保只是複製和粘貼整個事情,並嘗試第一次。那樣有用嗎?你使用的是什麼版本的Python? – Neil
3.3.2但是,它的工作很抱歉,試圖在殼中首先我的壞.... – Clemetron3000