我使用Don Jayamanne的Python擴展在Visual Studio代碼中開發Windows上的Python腳本。這是我的「手錶」調試窗口的內容:爲什麼Python的'len'函數誇大了一個字節數組的長度?
字節數組someBytes是20的長度,但Python的len函數使得77.爲什麼呢?
陣列被這樣產生的:
def sendTouchDown(ble):
message = bytes([0x01, 0x68, 0x03, 0x39, 0x05, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF])
if ble:
sendMuxBle(message)
else:
sendMuxRfcomm(message)
然後其長度如此測量:
def sendMuxRfcomm(someBytes):
crc = 0xFFFF
for i in range(0, len(someBytes), 2):
因爲'someBytes'是字節數組的字符串表示形式。 – vaultah
'someBytes [0] ='['''毫無疑問... –
這將解釋爲什麼我的代碼會變得瘋狂! – dumbledad