列表按绝对值逆序排序,并保存下标 // An highlighted block x = [5,-6,-3,8] b = sorted(enumerate(x), key=lambda x:abs(x[1]),reverse=True) # x[1]是因为在enumerate(a)中,a数值在第1位 c = [x[0] for x in b] print(b) print(c) 结果: [(3, 8), (1, -6), (0, 5), (2, -3)] [3, 1, 0, 2]