私はIPアドレスとその空きメモリ容量を持つ辞書を持っています。 私はある変数にIPを保存しようとしており、次に高い変数を別の変数に保存しようとしています。最大値のPython dictキー
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削除 後{' 192.168.100.102' : '1620'、 '192.168.100.101': '1615'}
nnip 192.168.100.102
なぜそれがrmip
として192.168.100.103
を印刷していますか?最高の価値を持つものでなければならないのですか?すなわち192.168.100.102
、次に101
をnnip
とすると、
またはmasterdictの値をintに変更すると、現在の 'max'関数が機能します – depperm
ありがとうございます。これは素晴らしいです。 @deppermumいいえ。辞書はこのように作成されます。私はVMの束からメモリの値を取っています。そして彼らは文字列として保存されています。私はそれをどのように変更するかについてはあまりよく分かりません。 – Aditya