Как отсортировать список с положительными значениями перед отрицательными значениями, отсортированными соответственно?

У меня есть список, который содержит смесь положительных и отрицательных чисел, как следующие

lst = [1, -2, 10, -12, -4, -5, 9, 2]

Я пытаюсь выполнить сортировку списка с положительными числами, предшествующими отрицательным, соответственно отсортированными.

Желаемый вывод:

[1, 2, 9, 10, -12, -5, -4, -2]

Мне удалось выяснить первую часть сортировки с положительными числами, предшествующими и отрицательными числами, к сожалению, это не соответственно сортирует положительные и отрицательные числа.

lst = [1, -2, 10, -12, -4, -5, 9, 2]
lst = sorted(lst, key=lambda o: not abs(o) == o)
print(lst)

>>> [1, 10, 2, 9, -2, -12, -4, -5]

Как мне добиться желаемой сортировки с помощью питонного раствора?

Ответы на вопрос(11)

Ваш ответ на вопрос