python–ntohll和htonll的實現

來源:互聯網
上載者:User
可以利用python中的struct包中的如下東東進行轉換:
1、位元組序:
Character Byte order Size and alignment
@ native native
= native standard
< little-endian standard
> big-endian standard
! network (= big-endian) standard

2、位元組數

Format C Type Python Notes
x pad byte no value  
c char bytes of length 1  
b signed char integer (1)
B unsigned char integer  
? _Bool bool (2)
h short integer  
H unsigned short integer  
i int integer  
I unsigned int integer  
l long integer  
L unsigned long integer  
q long long integer (3)
Q unsigned long long integer (3)
f float float  
d double float  
s char[] bytes (1)
p char[] bytes (1)
P void * integer  

3、自訂函數

使用struct,相當輕鬆

import struct
htonll = lambda a:struct.unpack('!Q', struct.pack('Q', a) )[0]ntohll = lambda a:struct.unpack('Q', struct.pack('!Q', a))[0]

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.