Python int类构造函数接受字节,还是bytearray实例?
我正在学习Python,对int类构造函数有点困惑 int类构造函数接受字节还是bytearray实例?Python int类构造函数接受字节,还是bytearray实例?,python,constructor,integer,Python,Constructor,Integer,我正在学习Python,对int类构造函数有点困惑 int类构造函数接受字节还是bytearray实例? 来自文档: 如果x不是一个数字,或者如果给定了基数,则x必须是一个字符串、字节或以基数表示整数文字的bytearray实例 如果我传递字节实例,那么我将得到以下错误 i = 10 b = bytes(i) val = int(b) 输出: Traceback (most recent call last): File "test.py", line 4, in
来自文档: 如果
x
不是一个数字,或者如果给定了基数,则x
必须是一个字符串、字节或以基数表示整数文字的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'
回溯(最近一次呼叫最后一次):
文件“test.py”,第4行,在
val=int(b)
ValueError:以10为基数的int()的文本无效:b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
指的是文本字节:
>>int(b'123')
123
你好像在找我
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'