Python中如何将列表值作为索引取用另一列表元素完成替换
Python列表索引映射实现方法
直接使用列表推导式遍历列表a的元素作为索引取值即可,代码如下:
a = [3, 2, 8, 7, 0] d = ['a','b','c','d','e','f','g','h','i'] # 基础实现:全部映射 c = [d[index] for index in a] # 运行后c的结果为:['d', 'c', 'i', 'h', 'a']
如果你需要和你给出的示例结果['d','c','i','a']一致,是过滤掉了a中值为7的元素,加个判断条件即可:
c = [d[index] for index in a if index != 7] # 运行后输出和示例完全匹配的结果
异常兼容处理
如果a中存在超出列表d长度的索引值,可以加边界判断避免抛出索引越界错误:
d_length = len(d) # 索引超出范围时默认返回空字符串,可自行修改默认值 c = [d[index] if index < d_length else '' for index in a]
内容的提问来源于stack exchange,提问作者Jabbar
相关产品推荐
相关产品推荐

