簡體   English   中英

python 2.7 - 將float轉換為字節並循環遍歷字節

[英]python 2.7 - converting float to bytes and looping through the bytes

我正在嘗試通過串行發送一個4字節的浮點數。 我的代碼看起來像這樣工作:

ser.write(b'\xcd') #sending the byte representation of 0.1
ser.write(b'\xcc')
ser.write(b'\xcc') 
ser.write(b'\x3d')

但我希望能夠發送一個仲裁浮動。

我也希望能夠單獨檢查每個字節,所以這不會例如:

bytes = struct.pack('f',float(0.1))
ser.write(bytes)

因為我想檢查每個字節。

我正在使用python 2.7我該怎么做?

您可以使用struct模塊將float打包為二進制數據。 然后循環遍歷bytearray的每個字節並將它們寫入輸出。

import struct

value = 13.37  # arbitrary float 
bin = struct.pack('f', value)

for b in bin:
    ser.write(b)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM