我需要按虚部对list
个复数进行排序。我找到了问题“ sorting list of complex numbers”的解决方案。
仅使用带有适当键的已排序命令:
list_ordered = sorted(list, key=lambda x: x.imag)
我也想找回排序索引。 Another existing solution在复数的情况下不起作用。是否有一种优雅的解决方案来提取我的案例中的索引?
谢谢!
答案 0 :(得分:1)
second answer to the question you linked可以轻松调整:
complexes = [1, 2+3j, 1-2j, 6+1j]
[i[0] for i in sorted(enumerate(complexes), key=lambda x:x[1].imag)]
# [2, 0, 3, 1]