作者jeffery1229 (Jeffery1229)
看板Python
標題[問題] byte轉integer的規則
時間Wed Jun 30 18:05:02 2021
print( list( b’ \xa31 ’ ) )
印出來是[163, 49]
轉回hex是0xa3跟0x31
但今天我改
print( list( b’ \x33a ’ ) )
印出來是[51, 97]
轉回hex是0x33跟0x61
請問他的規律是什麼
我試了很多組合都找不出來
網路上也找不到
剛接觸Python
還請各位大神指點(OvO)
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.229.167.7 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Python/M.1625047504.A.A05.html
1F:→ kenduest: \xa3 是 16 進位,所以一般表示就是 0xa3 06/30 20:15
2F:推 s0914714: b'\xa31'的1被當成ASCII的'1'(0x31) 試試看b'\xa3\x01' 06/30 20:15
3F:→ kenduest: 1 這個字元在 ascii table 內的 hex 碼是 0x31 06/30 20:15
4F:→ kenduest: b'\xa31' 所以 hex 整個就是 0xa3 與 0x31 06/30 20:17
5F:→ kenduest: \x33 是 16 進位,所以表示表示 0x33 06/30 20:17
6F:→ kenduest: a 字元在 ascii table 內的 hex 碼是 61 06/30 20:17
7F:推 TitanEric: 第一個 \xa31被解讀成\xa3 跟 1 06/30 20:18
8F:→ TitanEric: 第二個\x33a被解讀成\x33跟a 06/30 20:18
9F:→ kenduest: b'\x33a' 整個就是 0x33 與 0x61 06/30 20:18
10F:→ jeffery1229: 哇啊啊原來是這樣 感謝樓上三個高手^_^ 06/30 20:26