これはうまくいくはずですが、テストケースを実行するときにエラーが発生します。なんらかの理由で4番目のものが失敗します。 numbers [0]は '-1'を出力しますが、highest_numberまたはlowest_numberに代入すると ' - 'だけが出力されます。何がありますか?コードワード:カタ - 最高と最低を解決する
コード:
def high_and_low(numbers):
if numbers:
highest_number = numbers[0]
lowest_number = numbers[0]
numbers = numbers.split(" ")
print(highest_number)
print(lowest_number)
print(numbers[0])
for num in numbers:
if int(num) > int(highest_number):
highest_number = num
if int(num) < int(lowest_number):
lowest_number = num
return highest_number + " " + lowest_number
テストケース:
Test.assert_equals(high_and_low("4 5 29 54 4 0 -214 542 -64 1 -3 6 -6"), "542 -214");
Test.assert_equals(high_and_low("1 -1"), "1 -1");
Test.assert_equals(high_and_low("1 1"), "1 1");
Test.assert_equals(high_and_low("-1 -1"), "-1 -1");
Test.assert_equals(high_and_low("1 -1 0"), "1 -1");
Test.assert_equals(high_and_low("1 1 0"), "1 0");
Test.assert_equals(high_and_low("-1 -1 0"), "0 -1");
Test.assert_equals(high_and_low("42"), "42 42");
エラー:
ValueError: invalid literal for int() with base 10: '-'
うわー、私は愚かな感じ。ありがとうございました。 – terratunaz