Python oct() 函数



Python 的oct()函数用于将整数转换为其八进制(基数 8)表示。

与熟悉的十进制(基数 10)系统(范围从 0 到 9)不同,八进制仅使用数字“0 到 7”。在 Python 中,如果看到一个以“0o”为前缀的数字,例如 '0o17',则表示它是八进制表示。

语法

以下是 python oct() 函数的语法:

oct(x)

参数

此函数接受一个整数值作为参数。

返回值

此函数返回一个字符串,表示给定整数的八进制值。

示例 1

以下是 Python oct() 函数的示例。这里,我们将整数“219”转换为其八进制表示:

integer_number = 219
octal_number = oct(integer_number)
print('The octal value obtained is:', octal_number)

输出

以上代码的输出如下:

The octal value obtained is: 0o333

示例 2

这里,我们使用 oct() 函数获取负整数“-99”的八进制表示:

negative_integer_number = -99
octal_number = oct(negative_integer_number)
print('The octal value obtained is:', octal_number)

输出

获得的输出如下:

The octal value obtained is: -0o143

示例 3

现在,我们使用 oct() 函数将二进制值和十六进制值转换为其对应的八进制表示:

binary_number = 0b1010
hexadecimal_number = 0xA21
binary_to_octal = oct(binary_number)
hexadecimal_to_octal = oct(hexadecimal_number)
print('The octal value of binary number is:', binary_to_octal)
print('The octal value of hexadecimal number is:', hexadecimal_to_octal)

输出

产生的结果如下:

The octal value of binary number is: 0o12
The octal value of hexadecimal number is: 0o5041

示例 4

在下面的示例中,我们使用 oct() 函数将整数“789”转换为其八进制表示时,将去除“0o”前缀:

integer_number = 789
octal_noprefix = oct(integer_number)[2:]
print('The octal value of the integer without prefix is:', octal_noprefix)

输出

以上代码的输出如下:

The octal value of the integer is: 1425

示例 5

如果我们将非整数值传递给 oct() 函数,它将引发 TypeError。

这里我们将通过将浮点值“21.08”传递给 oct() 函数来演示 TypeError:

# Example to demonstrate TypeError
floating_number = 21.08
octal_number = oct(floating_number)
print('The octal value of the floating number is:', octal_number)

输出

我们可以从输出中看到,因为我们向 oct() 函数传递了一个浮点值,所以我们得到了一个 TypeError:

Traceback (most recent call last):
  File "C:\Users\Lenovo\Desktop\untitled.py", line 3, in <module>
    octal_number = oct(floating_number)
TypeError: 'float' object cannot be interpreted as an integer
python_type_casting.htm
广告