Python每2个列表生成重复值的新列表

时间:2016-05-26 17:18:44

标签: list python-3.x

鉴于这些清单:

a=[0, 1, 1, 1, 2, 2, 2, 2, 2]
b=['r','b','g','y','o','p']

我喜欢另一个列表,它根据列表中的值的频率重复列表b中的元素,如下所示:

c = ['r','b','b','b','g','g','g','g','g']

提前致谢!

1 个答案:

答案 0 :(得分:1)

假设a中的条目是索引,以下内容应该有效且相对不言自明。

c = [b[i] for i in a]
# ['r', 'b', 'b', 'b', 'g', 'g', 'g', 'g', 'g']