अजगर 3.x में, bytes()
एक बाइट अनुक्रम में एक पूर्णांक अनुक्रम हो जाएगा:
>>> bytes([1,65,2,255])
b'\x01A\x02\xff'
एक जनरेटर अभिव्यक्ति पूर्णांकों में अपने अनुक्रम कन्वर्ट करने के लिए इस्तेमाल किया जा सकता (ध्यान दें कि int(x,0)
एक पूर्णांक के लिए एक स्ट्रिंग में कनवर्ट करता है । का उपसर्ग के अनुसार 0x
का चयन करता है हेक्स):
>>> list(int(x,0) for x in ['0x28','0x0','0x0','0x0'])
[40, 0, 0, 0]
उन्हें संयोजन:
>>> bytes(int(x,0) for x in ['0x28','0x0','0x0','0x0'])
b'(\x00\x00\x00'
और उनमें लेखन आउट:
>>> L = ['0x28','0x0','0x0','0x0']
>>> with open('out.dat','wb') as f:
... f.write(bytes(int(x,0) for x in L))
...
4
स्रोत
2013-06-27 20:40:00
यह मेरे लिए काम करता – zhaozhi