次のように辞書に特定の値があるかどうかを確認すると、エラーが発生することに驚いています。
if src in mac_dict:
私はこのように私の辞書を埋めました:
data = database.get(mac, "get_nodelist", version=1)
if data:
fh = StringIO(data)
version = ord(fh.read(1))
length = ord2b(fh.read(2))
length = length / 8
macs = {}
for i in xrange(0,length):
mac = fh.read(6)[-3:]
tdm = ord2b(fh.read(2))
macs[mac] = tdm
print hexlify(mac) + " - " + str(tdm)
fh.close()
fh = open("macs.bin","wb")
pickle.dump(macs,fh)
fh.close()
return macs
data には、6 バイトの mac アドレスと 2 バイトの tdm が sa 行に含まれています。それらはprintステートメントで適切にデコードされているようですが、src(バイナリ)がmac_dictの一部であるかどうかを確認したい場合、スクリプトは例外をスローします-間違いなくそこにいるはずですが..何かヒントはありますか?
ありがとうございました!ロン