tornado程序中出现ValueError: invalid literal for int() with base 16: ‘

tornado程序中出现ValueError: invalid literal for int() with base 16: ’ ')

原因:

b="55443301010d20190705143157028100000000000000000000000000000002000003"
b="55443301010d2019070514315702817f"
print(len(b))
print(int(b[56:58:], 16))

在于我程序中以为接收到的数据长度有68个,所有取56,58之间切片没问题,
调试最后才发现是因为接收到数据长度小于切片位置,所有获取到空的str,
然后就会报错
在这里插入图片描述
特此记录此bug

你可能感兴趣的:(bug调试)