Продолжаем рубрику code wars
Следущая задача мне была понятна с самого начала. Я написал решение которое делает то, что от меня требовалось, но долбаный codewars не хочет принимать. Что я делаю не так?
Задача написать функцию : "In this little assignment you are given a string of space separated numbers, and have to return the highest and lowest number." - перевод: «В этом небольшом задании вам дана строка чисел, разделенных пробелами, и вы должны вернуть самое высокое и самое низкое число».
примеры : тут тоже понятно что от меня надо, принимает строку, в которой надо найти самое большое и малое и вывести как строку через пробел сначала большое потом малое, никаких проблем задача ясна.
high_and_low("1 2 3 4 5") # return "5 1"
high_and_low("1 2 -3 4 5") # return "5 -3"
high_and_low("1 9 3 4 -5") # return "9 -5"
ДОП условности :
All numbers are valid Int32, no need to validate them. - перевод : Все числа действительны Int32, нет необходимости проверять их.
There will always be at least one number in the input string. - перевод :Во входной строке всегда будет хотя бы одно число.
Output string must be two numbers separated by a single space, and highest number is first. - перевод : Выходная строка должна состоять из двух чисел, разделенных одним пробелом, и наибольшее число будет первым.
Вот мое решение
def high_and_low(numbers):
high = max([int(x) for x in numbers.split()])
low = min([int(x) for x in numbers.split()])
result = print(str(high),str(low))
return result
high_and_low('1 3 4 5 6 -9 99 10 34')
#99 -9
что просили то и получили, не понимаю почему не хочет принимать решение..
Менял result с str на int тоже ничего
в консоли теста кодварс показывает вот что их тест "4 5 29 54 4 0 -214 542 -64 1 -3 6 -6" должен
вывести "542 -214", моя функция так и делает, только может дело в ковычках подумал я, и преобразовал переменную result в result = print("'"+str(high),str(low)+"'")
и это не помогло.
Что делать не знаю. Может я неверно понял условие задачи? Или английский как то не так понял. не знаю буду рад советам.