我有一个字典,里面有IP地址和它们的可用内存空间。 我正在尝试将IP保存到一个变量,并将下一个最高的IP保存到另一个变量。在
masterdict: {'192.168.100.102': '1620', '192.168.100.103': '470', '192.168.100.101': '1615'}
print masterdict
rmip = max(masterdict, key=masterdict.get)
print "<br>rmip<br>"
print rmip
del masterdict [rmip]
print "<br>masterdict after deletion<br><br>"
print masterdict
nnip = max(masterdict, key=masterdict.get)
print "<br>nnip<br>"
print nnip
但我得到的结果是:
masterdict {'192.168.100.102': '1620', '192.168.100.103': '470', '192.168.100.101': '1615'}
rmip 192.168.100.103
masterdict after deletion {'192.168.100.102': '1620', '192.168.100.101': '1615'}
nnip 192.168.100.102
为什么要将192.168.100.103
打印为rmip
?它不应该是价值最高的那个吗?i、 e.192.168.100.102
然后101
作为nnip
?在
字典中的值是字符串,因此
max
将它们作为字符串进行比较。如果要将它们作为整数进行比较,则需要使用key函数将字符串转换为整数…:或者将值更改为
^{pr2}$int
,然后使用当前的max语句:相关问题 更多 >
编程相关推荐