파이썬 리스트 관련 질문입니다
조회수 570회
앞의 질문에서 날로 먹으려던 생각을 지적해주신 분들 감사합니다.
일침을 주셨던 부분은 해결했습니다!0^
새로운 질문이 있습니다.
데이터 a 가 1,2,3을 가지고 있고 숫자 b가 1을 가지고 있다는 전제하에 b가 a에 포함되어 있다면 a에서 b를 뺀 값을 반환하고 만약 a가 b를 가지고 있지 않다면 0을 반환해주는 것인데요.
전 이 함수 알고리즘을
if element_value in list_data:
print(list_data.remove(element_value))
else:
print("0")
이라고 설정했습니다.
그 후 list_data 값에 1,2,3을 부여하고 element_value에 1을 부여했는데요.
제 생각대로라면 1,2,3에서 1이라는 값을 빼준 2와 3이 나와야하는데 else값인 0이 나오더군요.... 이 함수에 어떤 문제가 있는 것인지 설명해주실 수 있나요 앞의 문제에 도움 주신분들께 너무 감사드립니다.
-
(•́ ✖ •̀)
알 수 없는 사용자 - 〉
1 답변
-
>>> l = [ 1, 2, 3 ] >>> help(l.remove) Help on built-in function remove: remove(...) method of builtins.list instance L.remove(value) -> None -- remove first occurrence of value. Raises ValueError if the value is not present.
list.remove 메소드는 None 을 반환합니다.
print(a.remove(b))
는
a.remove
의 리턴값을print
합니다. 따라서a
에서b
가 빠지는 동작을 하지만,None
이 찍힙니다.
댓글 입력