このリストを見ると
my_lst = ['LAC', 'HOU', '03/03 06:11 PM', '2.13', '1.80', '03/03 03:42 PM']
辞書の値に応じて、その値0th
と値を変更します。1st
def translate(my_lst):
subs = {
"Houston": "HOU",
"L.A. Clippers": "LAC",
}
リストは次のようになります:
['L.A. Clippers', 'Houston', '03/03 06:11 PM', '2.13', '1.80', '03/03 03:42 PM']
ベストアンサー1
すべての値が一意である場合は、効率的なソリューションを得るために、まず辞書を逆にする必要があります。
>>> subs = {
... "Houston": "HOU",
... "L.A. Clippers": "LAC",
...
... }
>>> rev_subs = { v:k for k, v in subs.items()} # subs.iteritems() In Python 3
>>> [rev_subs.get(item, item) for item in my_lst]
['L.A. Clippers', 'Houston', '03/03 06:11 PM', '2.13', '1.80', '03/03 03:42 PM']
選択したインデックスのみを更新しようとしている場合は、次を試してください。
indexes = [0, 1]
for ind in indexes:
val = my_lst[ind]
my_lst[ind] = rev_subs.get(val, val)