if len(numbers) == 0: 이 None을 출력하는 방법?!

조회수 423회
def near_zero(*numbers):
    if len(numbers) == 0:
        return None

    closest_num = numbers[0]
    min_distance = abs(numbers[0] - 0)

    for num in numbers[1: ]:
        distance = abs(num - 0)
        if distance < min_distance:
            min_distance = distance
            closest_num = num

    return closest_num

위의 코드가 아래의 동작들을 수행해야하는데, 1번 near_zero()를 입력하면 None을 출력하지 않습니다. 어떻게 수정해야할까요?ㅠㅠ

  1. near_zero() 는 None 을 리턴해야합니다. (return None)
  2. near_zero(1, 4, 2) 는 1을 리턴해야 합니다.
  3. near_zero(1, 4, 2, 3, -9, -0.5) 는 -0.5를 리턴해야 합니다.
  4. near_zero(1, -1, 0) 은 0을 리턴해야 합니다.
  5. near_zero(1, -1, 2) 는 1과 -1 중 하나를 리턴하면 됩니다.
  • "리턴" 말고 "출력" 말씀이신가요? 그럼 return None 바로 앞줄에서 print(None) 해주시면 되겠네요. 엽토군 2023.11.13 19:06
  • 위 코드넣어놓고 print(near_zero())입력시 None출력됩니다. hyk2202@gmail.com 2023.12.6 14:08

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)