Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
First solution in Clear category for Absolute Sorting by Steven2222
def checkio(numbers_array: tuple) -> list:
"""
Sorts a tuple of int (pos and neg) on ascending order of absolute value
numbers_array: tuple, int
out: tuple, int (original neg val restored)
"""
# Thanks to Martijn Pieters Solution 3 https://stackoverflow.com/questions/27905351/sorting-by-absolute-value-without-changing-to-absolute-value
# Short and direct
return sorted(numbers_array, key= abs)
#These "asserts" using only for self-checking and not necessary for auto-testing
if __name__ == '__main__':
print('Example:')
print(list(checkio((-20, -5, 10, 15))))
def check_it(array):
if not isinstance(array, (list, tuple)):
raise TypeError("The result should be a list or tuple.")
return list(array)
assert check_it(checkio((-20, -5, 10, 15))) == [-5, 10, 15, -20], "Example" # or (-5, 10, 15, -20)
assert check_it(checkio((1, 2, 3, 0))) == [0, 1, 2, 3], "Positive numbers"
assert check_it(checkio((-1, -2, -3, 0))) == [0, -1, -2, -3], "Negative numbers"
print("Coding complete? Click 'Check' to review your tests and earn cool rewards!")
Sept. 9, 2019