uint8是8位的,表示十进制数0-255,如果大于255则进一位,例如256显示就变成0
示例代码如下
c=256
a=torch.tensor(1,dtype=torch.uint8)
tensor=[a for i in range(c)]
print(sum(tensor))
结果
tensor(0, dtype=torch.uint8)
改正方法对uint8求和要使用torch中的sum()方法,而不是调用python中的函数sum()
示例代码
c=256
a=torch.tensor(1,dtype=torch.uint8)
tensor=[a for i in range(c)]
'''sum函数是python自带按照原来类型相加
sum方法则是会转换成默认类型相加'''
print(sum(tensor))
tensor=torch.tensor(tensor,dtype=torch.uint8)
print(tensor.sum())
结果
tensor(0, dtype=torch.uint8)
tensor(256)
在两个tensor比较相等时都是uin8类型,所以要十分注意。