Python:遍历列表并用字典值替换元素
我想把列表中的某个元素的值替换成在字典中查到的值,我该怎么做呢?
list = [1, 3, 2, 10] d = {'id': 1, 'val': 30},{'id': 2, 'val': 53}, {'id': 3, 'val': 1}, {'id': 4, 'val': 9}, {'id': 5, 'val': 2}, {'id': 6, 'val': 6}, {'id': 7, 'val': 11}, {'id': 8, 'val': 89}, {'id': 9, 'val': 2}, {'id': 10, 'val': 4} for i in list: for key, v in d.iteritems(): ??? ???
所以最后我希望得到的是:
list = [30, 1, 53, 4]
谢谢你
2 个回答
0
td = (
{'val': 30, 'id': 1},
{'val': 53, 'id': 2},
{'val': 1, 'id': 3},
{'val': 9, 'id': 4},
{'val': 2, 'id': 5},
{'val': 6, 'id': 6},
{'val': 11, 'id': 7},
{'val': 89, 'id': 8},
{'val': 2, 'id': 9},
{'val': 4, 'id': 10}
)
source_list = [1, 3, 2, 10]
final_list = []
for item in source_list:
for d in td:
if d['id'] == item:
final_list.append(d['val'])
print('Source : ', source_list)
print('Final : ', final_list)
Source : [1, 3, 2, 10]
Final : [30, 1, 53, 4]
结果
15
在编程中,有时候我们会遇到一些问题,比如代码运行不正常或者出现错误。这些问题可能会让人感到困惑,特别是对于刚开始学习编程的人来说。解决这些问题的第一步就是理解错误信息,看看它们在说什么。通常,错误信息会告诉你出错的地方和原因。
另外,调试代码也是一个重要的技能。调试就是逐步检查代码,找出哪里出了问题。你可以通过在代码中添加一些打印语句,来查看程序在运行时的状态,这样可以帮助你找到错误。
总之,遇到问题时,不要慌张,仔细阅读错误信息,逐步调试,通常就能找到解决办法。
D2 = dict((x['id'], x['val']) for x in D)
L2 = [D2[x] for x in L]