Python의 Mutating List 메서드가 None을 반환하는 이유
Python에서 추가, 정렬, 확장, 제거, 지우기 등 목록을 수정하는 작업 , 그리고 반대로, 놀랍게도 업데이트된 목록 대신 None을 반환합니다. 이 디자인 결정은 호기심과 논쟁을 불러일으켰습니다.
Python의 자비로운 종신 독재자(BDFL)인 Guido van Rossum은 이 원칙이 코딩 스타일 고려 사항에서 비롯되었다고 설명합니다. 일부 언어에서는 x.compress().chop(y).sort(z)와 같이 단일 개체에 여러 부작용을 연결하는 것을 선호합니다.
Van Rossum은 이러한 연결이 메서드에 익숙하지 않은 독자의 가독성을 방해할 수 있다고 믿습니다. 관련된. 그는 부작용을 분리하여 개체에 직접 적용하는 보다 명시적인 스타일을 선호합니다.
x.compress() x.chop(y) x.sort(z)
이러한 접근 방식은 어떤 개체가 수정되고 있는지 명확하게 하여 이해를 촉진합니다.
Van Rossum 예약 다음과 같이 결과가 변환된 문자열인 문자열 처리 작업과 같이 새 값을 반환하는 작업을 연결합니다.
y = x.rstrip("\n").split(":").lower()
이 디자인 결정은 의도적으로 이루어졌습니다. 부작용 호출의 연결을 방지하고 내부 수정과 새 개체를 반환하는 작업 간의 구별을 강조하기 위해 구현되었습니다. 때로는 불편해 보일 수도 있지만 Python 코딩 스타일의 명확성과 일관성을 높여줍니다.
위 내용은 Python의 목록 변경 메서드가 'None'을 반환하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!