我有这些Python列表:
x = [('D', 'F'), ('A', 'D'), ('B', 'G'), ('B', 'C'), ('A', 'B')]
priority_list = ['A', 'B', 'C', 'D', 'F', 'G'] # Ordered from highest to lowest priority
如何针对列表中的每个元组,根据 priority_list
中的最高优先级保留值?结果将是:
['D', 'A', 'B', 'B', 'A']
另外一些例子:
x = [('B', 'D'), ('E', 'A'), ('B', 'A'), ('D', 'F'), ('E', 'C')]
priority_list = ['A', 'B', 'C', 'D', 'E', 'F']
# Result:
['B', 'A', 'A', 'D', 'C']
x = [('B', 'C'), ('F', 'E'), ('B', 'A'), ('D', 'F'), ('E', 'C')]
priority_list = ['F', 'E', 'D', 'C', 'B', 'A'] # Notice the change in priorities
# Result:
['C', 'F', 'B', 'F', 'E']
提前感谢,我可能过于复杂化了这个问题。
priority_list
。只需取每个元组的第一个元素即可...它已经吸引了很多答案,但我们不知道真正的测试用例。 - Jean-François Fabrex = [('D', 'F'), ('A', 'D'), ('B', 'G'), ('B', 'C'), ('B', 'A')]
,输出会是什么?你能添加更多的元组以使其更清晰吗? - CristiFati