영어 문서:
oct ( x ) Convert an integer number to an octal string. The result is a valid Python expression. If x is not a Pythonobject, it has to define anmethod that returns an integer.
설명:
1. 정수를 8진수 문자열로 변환하는 함수입니다. 부동 소수점 숫자나 문자열을 전달하면 오류가 보고됩니다.
>>> a = oct(10) >>> a '0o12' >>> type(a) # 返回结果类型是字符串 <class 'str'> >>> oct(10.0) # 浮点数不能转换成8进制 Traceback (most recent call last): File "<pyshell#3>", line 1, in <module> oct(10.0) TypeError: 'float' object cannot be interpreted as an integer >>> oct('10') # 字符串不能转换成8进制 Traceback (most recent call last): File "<pyshell#4>", line 1, in <module> oct('10') TypeError: 'str' object cannot be interpreted as an integer
2. 들어오는 매개 변수가 정수가 아닌 경우 __index__를 정의하고 정수 함수를 반환하는 클래스의 인스턴스 개체여야 합니다.
# __index__ 함수는 정의되지 않았으며 변환할 수 없습니다.
>>> class Student:
def __init__(self,name , 나이):
self.name = 이름
self.age = 나이
>>> ' ,10)
>>> oct(a)
추적(가장 최근 호출 마지막):
파일 "
oct(a)
TypeError: 'Student' 객체를 정수로 해석할 수 없습니다
# 정의됨 __index__ 함수인데 반환값이 int형이 아니고 변환이 불가능합니다
>>> class Student: def __init__(self,name,age): self.name = name self.age = age def __index__(self): return self.name >>> a = Student('Kim',10) >>> oct(a) Traceback (most recent call last): File "<pyshell#18>", line 1, in <module> oct(a) TypeError: __index__ returned non-int (type str) # 定义了__index__函数,而且返回值是int类型,能转换 >>> class Student: def __init__(self,name,age): self.name = name self.age = age def __index__(self): return self.age >>> a = Student('Kim',10) >>> oct(a) '0o12'
위는 Python 내장 함수 OCT에 대한 자세한 설명입니다. 관련 글은 PHP를 참고해주세요. 중국사이트(www.php.cn)!