Python リストを {"mpn":"list_value"} オブジェクトの JSON 配列に変換する関数を作成しようとしています。ここで、「mpn」はすべてのオブジェクトに必要なリテラル文字列値ですが、「list_value」は値ですパイソンリストから。この関数の出力を API get 要求に使用します。
part_nums = ['ECA-1EHG102','CL05B103KB5NNNC','CC0402KRX5R8BB104']
def json_list(list):
lst = []
d = {}
for pn in list:
d['mpn']=pn
lst.append(d)
return json.dumps(lst, separators=(',',':'))
print json_list(part_nums)
この現在の関数は機能しておらず、すべての JSON オブジェクトの Python リストの最後の値を返します。
>[{"mpn":"CC0402KRX5R8BB104"},{"mpn":"CC0402KRX5R8BB104"},{"mpn":"CC0402KRX5R8BB104"}]
ただし、もちろん、オブジェクト内の一意のリスト値を返す関数が必要です。
>[{"mpn":"ECA-1EHG102"},{"mpn":"CL05B103KB5NNNC"},{"mpn":"CC0402KRX5R8BB104"}]
要するに、この関数が機能しない理由がわかりません。単一の {key:value} ペアを持つ辞書を python リストに追加できると思っていましたが、すべての辞書が独立しているため、すべての辞書が同じキーを持っていても問題ありません。ご協力いただきありがとうございます。