【发布时间】:2021-12-11 20:37:59
【问题描述】:
我有以下清单:
l1 = ['foo_x', 'bar_x', 'xyz_x', 'foo_y', 'bar_y', 'xyz_y']
我创建了一个包含常见元素的列表。
l2 = ['foo', 'bar', 'xyz']
# trying to reorder which is not successful
[i for i in l1 if (l2 in l1)]
我想改变 l1 的顺序以获得以下结果:
['foo_x', 'foo_y', 'bar_x', 'bar_y', 'xyz_x', 'xyz_y']
【问题讨论】:
-
foo_x(和其他人)是什么?foo是什么?这些变量是字符串还是它们实际上是字符串,而您忽略了在它们周围添加引号? -
有哪些元素?它们是子列表吗?查看
list.sort和sorted的key= 参数。您可能想编写一个键函数来获取 l1 中该元素的索引,但如果我们不知道这些是什么,我们将无能为力 -
确实是字符串。