> 백엔드 개발 > 파이썬 튜토리얼 > Python 목록 돌연변이 메서드가 '없음'을 반환하는 이유는 무엇입니까?

Python 목록 돌연변이 메서드가 '없음'을 반환하는 이유는 무엇입니까?

Mary-Kate Olsen
풀어 주다: 2024-12-28 12:49:12
원래의
726명이 탐색했습니다.

Why Do Python List Mutation Methods Return `None`?

Python에서 목록 돌연변이가 없음을 반환하는 이유

추가, 정렬, 확장, 제거, 지우기, 역방향과 같은 방법으로 Python 목록을 조작할 때 이상한 동작이 발생합니다. : 이러한 작업은 목록을 내부에서 수정하고 업데이트된 목록 대신 None을 반환합니다.

이 디자인 선택은 Python의 기본 원칙에 따라 결정되었습니다. 그 자리에서 객체를 변경하면 None을 반환해야 합니다. 이는 이러한 작업 중에 새 객체가 생성되지 않는다는 사실을 강조하는 역할을 합니다.

Python의 창시자인 Guido van Rossum은 Python-Dev 메일링 리스트에서 자신의 이론적 근거를 자세히 설명합니다. 그는 코드의 의도에 대한 독자의 이해를 모호하게 할 수 있으므로 단일 개체에 대한 부작용을 간결하게 연결하는 것에 반대합니다. 예를 들어, 다음 코드를 고려해 보세요.

x.compress().chop(y).sort(z)
로그인 후 복사

이것은 다음과 같습니다.

x.compress()
x.chop(y)
x.sort(z)
로그인 후 복사

Van Rossum은 두 번째 형식이 각 작업이 적용됨을 명시적으로 보여주기 때문에 더 명확하다고 주장합니다. 동일한 변수 x에 연결합니다.

반면에 체인 사용은 문자열 처리와 같이 새 값을 반환하는 작업에 예약되어 있습니다. 작업:

y = x.rstrip("\n").split(":").lower()
로그인 후 복사

pstat와 같은 특정 라이브러리 모듈이 부작용 호출 연결을 권장할 수 있지만 Van Rossum은 표준 라이브러리에 새로 추가되는 경우 이러한 방식을 권장하지 않는다고 주장합니다.

위 내용은 Python 목록 돌연변이 메서드가 '없음'을 반환하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿