bool과 int의 상속 관계 이해
Python에서는 겉보기에는 별개인 bool 데이터 유형이 실제로는 하위 클래스라는 사실이 흥미롭습니다. 정수의. 이는 다음과 같은 질문을 제기합니다: 왜 이 관계가 확립되는가?
이 상속의 이유는 Python의 역사적 진화에서 비롯됩니다. 버전 2.2나 2.3에서 bool 타입이 도입되기 전에는 C89와 유사하게 정수 0과 1을 사용하여 진리값을 표현했습니다.
bool 타입 추가 시 기존 코드와의 호환성을 보장하기 위해 설계되었습니다. 0과 1과 동일하게 동작합니다. 이 동작은 진리값을 넘어 모든 적분 연산을 포함하도록 확장되었습니다. 숫자 컨텍스트에서 부울 결과를 사용하거나 진리값의 동일성을 테스트하는 것은 권장되지 않지만 레거시 코드와의 호환성을 유지하기로 결정했습니다.
결과적으로 True와 False는 각각 1과 0으로 가장합니다. 이 상속 관계는 Python 언어의 진화와 이전 버전과의 호환성을 유지하려는 욕구를 반영하는 역사적 유물입니다.
위 내용은 부울 데이터 유형이 Python에서 정수의 하위 클래스인 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!