Python
1before_sorted=[ [{"lang": "en", "value": "CWE-20"}, {"lang": "en", "value": "CWE-90"}], 2[{"lang": "en", "value": "CWE-200"}, {"lang": "en", "value": "CWE-190"}, 3{"lang:"en", "value": "CWE-220"}]]
上のデータはJSONのデータを辞書型に変換したものですが、上記データから下記のような出力を得たいです。
Python
1final_result_sorted = [["CWE-20", "CWE-90"], ["CWE-200", "CWE-190", "CWE-200"]]
Python
1result_sorted1 = [] 2result_sorted2 = [] 3final_result = [] 4 5 6for i in range(len (before_sorted)): 7 for k in range(len(before_sorted[i])): 8 if i == 0: 9 result_sorted_1.append(before_sorted[i][k]["value"]) 10 11 elif i==1: 12 result_sorted_2.append(before_sorted[i][k]["value"]) 13 14final_result=[result_sorted_1, result_sorted_2] 15 16print(final_result)
とすれば、期待出力自体は得られるのですが、配列の数の分、変数が増えてしまいます。
効率の良いコードの書き方をご存知でしたら、ご教示いただけないでしょうか。スマホ記入のため、インデントがおかしいところがあると思いますが、後で修正します。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2019/01/28 05:00