int class 构造函数接受字节或 bytearray 实例?
int class constructor accepts bytes, or bytearray instance?
我正在学习 Python 并且我对 int class 构造函数有点困惑
int class 构造函数是否接受字节或 bytearray 实例?
来自文档: https://docs.python.org/3/library/functions.html#int
class int([x])
class int(x, base=10)
如果x
不是一个数字或者如果给定了base,那么x
必须是一个字符串,bytes,或者表示整数的bytearray实例基数中的文字。
如果我传递字节实例,则会收到以下错误。
i = 10
b = bytes(i)
val = int(b)
输出:
Traceback (most recent call last):
File "test.py", line 4, in <module>
val = int(b)
ValueError: invalid literal for int() with base 10: b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
指的是文本的字节数:
>>> int(b'123')
123
您似乎在寻找 int.from_bytes
。
我正在学习 Python 并且我对 int class 构造函数有点困惑
int class 构造函数是否接受字节或 bytearray 实例?
来自文档: https://docs.python.org/3/library/functions.html#int
class int([x])
class int(x, base=10)
如果x
不是一个数字或者如果给定了base,那么x
必须是一个字符串,bytes,或者表示整数的bytearray实例基数中的文字。
如果我传递字节实例,则会收到以下错误。
i = 10
b = bytes(i)
val = int(b)
输出:
Traceback (most recent call last):
File "test.py", line 4, in <module>
val = int(b)
ValueError: invalid literal for int() with base 10: b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
指的是文本的字节数:
>>> int(b'123')
123
您似乎在寻找 int.from_bytes
。