영문 문서:
bin
(x)
변환 결과는 유효한 Python 표현식입니다. x가 Python int
객체가 아닌 경우 정수를 반환하는 __index__()
메서드를 정의해야 합니다.
지침:
1. 정수를 이진 문자열로 변환
>>> b = bin(3) >>> b '0b11' >>> type(b) #获取b的类型 <class 'str'>
2. 매개변수 x가 정수가 아닌 경우 x는 __index__( ) 메서드이며 메서드 반환 값은 정수여야 합니다.
2.1 객체가 정수가 아닌 경우 오류가 발생합니다.
>>> class A: pass >>> a = A() >>> bin(a) Traceback (most recent call last): File "<pyshell#15>", line 1, in <module> bin(a) TypeError: 'A' object cannot be interpreted as an integer
2.2 객체가 __index__ 메서드를 정의하지만 반환 값이 정수가 아닌 경우 오류가 발생합니다.
>>> class B: def __index__(self): return "3" >>> b = B() >>> bin(b) Traceback (most recent call last): File "<pyshell#21>", line 1, in <module> bin(b) TypeError: __index__ returned non-int (type str)
이 보고됩니다. 2.3 개체가 _ _index__ 메서드를 정의하고 반환 값이 정수인 경우 __index__ 메서드 반환 값을 이진 문자열로 변환합니다.
>>> class C: def __index__(self): return 3 >>> c = C() >>> bin(c) '0b11'
위 내용은 Python 내장 bin 함수에 대한 자세한 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!