在Python中,我们可以使用条件表达式和列表推导式来实现变量重新排序按条件。
例如,假设我们有一个列表,我们想根据其中的元素值对另一个列表中的变量进行重新排序。可以使用以下代码:
numbers = [4, 2, 1, 3, 5]
words = ['four', 'two', 'one', 'three', 'five']
words_ordered = [words[i] for i in sorted(range(len(numbers)), key=lambda k: numbers[k])]
print(words_ordered)
其中,sorted(range(len(numbers)), key=lambda k: numbers[k])
设置了按照numbers列表中索引对应的值进行排序,然后将排序后的索引传入到列表推导式中,最终得到了words列表按照numbers列表顺序重新排序后的列表。
输出结果将是:['one', 'two', 'three', 'four', 'five']
下一篇:变量重要性是否是双向路?