我想从如下数据结构中获取:
[[0, 12, 25, 45, 65, 100],
[0, 0, 0, 255, 255, 255],
[0, 0, 255, 255, 0, 0],
[255, 255, 0, 0, 0, 0]]
至:
[[0, 12, 12, 25, 25, 45, 45, 65, 65, 100],
[0, 0, 0, 0, 0, 255, 255, 255, 255, 255],
[0, 0, 0, 255, 255, 255, 255, 0, 0, 0],
[255, 255, 255, 0, 0, 0, 0, 0, 0, 0]]
(除了第一列和最后一列之外的所有列都重复)。
我有以下有效的列表理解:
[[l[0]] + [x for sl in [[i, i] for i in l[1:-1]] for x in sl] + [l[-1]] for l in list_of_lists]
但我想知道是否有更优雅、更易读的方式来写这个。