Python中的item()和items()尽管看起来有些相似,但是使用起来却十分不同。
1、item(),这个经常在模型训练中的loss见到,其目的主要是为了获取更高的精度,示例如下。
import torch
a = torch.randn(5, 5)
'''
tensor([[-0.6648, 0.7282, 0.7410, 0.5374, 1.1508],
[ 0.1571, -0.8634, 0.5367, 0.7639, -0.5193],
[ 0.1430, -0.4765, 0.1473, 1.3475, 0.4539],
[-1.6807, 0.3201, 0.7992, 0.8621, 0.7037],
[ 0.9254, 1.2819, -0.3823, 0.1670, 0.5066]])
'''
print(a[2, 2])
'''
tensor(0.1473)
'''
#利用item()取值
print(a[2, 2].item())
'''
0.14730656147003174
'''
2、items()主要用于字典,将字典中的键值对组成元组,然后将这些元组放在列表中进行返回
b = {'1': 10, '2': 11, '3': 12, '4': 13, '5': 14}
print(b.items())
'''
dict_items([('1', 10), ('2', 11), ('3', 12), ('4', 13), ('5', 14)])
'''