Fedora 17では、netifacesとjsonインポートを使用しているときに64ビット。
この形式をJSONで取得しようとしています
"net_info" : [ {"nic" : ..., "mac" : ..., "ip" : ...}, {"nic" : ..., "mac" : ..., "ip" : ...}, {"nic" : ..., "mac" : ..., "ip" : ...}, ]
私は現在、を使用していて、string
それに追加するだけです。これを取得します。
"'net_info': [{'nic':eth0,'mac':6c:f0:49:0f:e1:c2,'ip':192.168.1.116},]"
これは、各文字列の最初と最後に引用符があるために機能しない場合があります。これを達成するためのより良い方法はありますか?辞書のリストを使用することを考えていましたが、最初に文字列を試してみました。この場合、何が最適かわかりませんでした。
これが3つのリストを取り込む私のコードです:
def json_serialize(ip=[],mac=[],nic=[]):
jsonDump = "'net_info': ["
for i,item in enumerate(ip):
jsonDump += "{'interface_name':" + nic[i] +",'mac':"
+ mac[i] + ",'ip':" + ip[i] +"},"
jsonDump += "]"
print jsonDump.strip()
#Testing output after its passed in to json.dumps(), it now has quotes at beginning
#and end of string...?
print "\n"
print json.dumps(jsonDump)