2017-11-23 6 views
-1

私はパケットを持っているので、パケットを分割して情報を抽出する必要があります。パケットは、文字列の形式で、次のようになります。私は0.34Pythonデータを抽出するためにパケットを分割する方法

がどのように私はすべての値を抽出することができID1値のためのようidの値を抽出するために必要以上のパケットから

{"S.No":"9","data":[{"id":"ID1","value":" 0.34"},{"id":"ID2","value":" 2.92"},{"id":"ID3","value":" 2.92"}]}

おかげ

+0

を? – saul

+0

try list comprehension:['id'] = ''の場合は、[[data ']] 'のaの[[a [' id ']]またはstr [' data ' = 'ID1'] ' – ezdazuzena

+0

@timgeb最初は、データは'(b '{"S." no ":" 9 "、...' 'data.decode(" utf-8 ")'それを文字列に変換する –

答えて

4

私が正しく理解している場合、あなたのような何か試すことができます:あなたが今しようとしていた何

import json 
string_data = '{"S.No":"9","data":[{"id":"ID1","value":" 0.34"},{"id":"ID2","value":" 2.92"},{"id":"ID3","value":" 2.92"}]}' 
data = json.loads(string_data) 
[float(d['value']) for d in data['data']] 
# will result in: 
[0.34, 2.92, 2.92] 
+1

まさに私の考え。このimoを扱う最良の方法。 –

関連する問題