受信データをPythonスクリプトに転送するデータベースから送信されたUDPストリームからデータを受信しています。UDPストリームから受信したデータオブジェクトから整数を抽出する
私がデータを受信するには、次のコードを使用しています:
import socket
UDP_IP = "localhost"
UDP_PORT = 5060
sock = socket.socket(socket.AF_INET, # Internet
socket.SOCK_DGRAM)
sock.bind((UDP_IP, UDP_PORT))
while True:
data, addr = sock.recvfrom(1024)
print (data)
データは(私が間違っている場合は、私を修正してください)バイトのようなオブジェクトとして返されます。データ変数を印刷すると、次のようなものになります。
b'nulldata,country=swe,region=europe,tag=tagged value=10 1505893007463590886'
をしかし、また、サーバから送信されたどのデータに応じて、次のようになります。
b'nulldata,country=swe,region=europe,tag=tagged value=4123.4331,value2=123.5123, 1505893008892590551'
抽出する最も効率的な方法だろう何value=
およびvalue2=
の後の数値と、id(1505893008892590551)の後の数値を、このような辞書またはリストに格納しますか?
[1505893008892590551, 4123.4331, 123.5123]
または
{'ID': 1505893008892590551, 'Value': 4123.4331, 'Value2': 123.5123}
ジェネリックだろうと私はより多くの値が好ましいであろう追加しても動作します方法!