重複の可能性:
Python でリストを均等なサイズのチャンクに分割するにはどうすればよいですか?
文字列を文字数で分割
次のような文字列(16進数)があります。
717765717777716571a7202020
私はそれをフォーマットにする必要があります:
0x71,0x77,0x65,0x71,0x77,0x77...
どの方法がベストかはわかりませんが、
重複の可能性:
Python でリストを均等なサイズのチャンクに分割するにはどうすればよいですか?
文字列を文字数で分割
次のような文字列(16進数)があります。
717765717777716571a7202020
私はそれをフォーマットにする必要があります:
0x71,0x77,0x65,0x71,0x77,0x77...
どの方法がベストかはわかりませんが、
>>> s = '717765717777716571a7202020'
>>> ['0x' + s[i:i+2] for i in range(0, len(s), 2)]
['0x71', '0x77', '0x65', '0x71', '0x77', '0x77', '0x71', '0x65', '0x71', '0xa7', '0x20', '0x20', '0x20']
結果としてコンマ区切りの文字列が必要な場合は、次を使用できます。
>>> ','.join('0x' + s[i:i+2] for i in range(0, len(s), 2))
'0x71,0x77,0x65,0x71,0x77,0x77,0x71,0x65,0x71,0xa7,0x20,0x20,0x20'
別の方法。
s = '717765717777716571a7202020'
print ','.join('0x'+''.join(d) for d in zip( *[iter(s)]*2 ))
出力:
0x71,0x77,0x65,0x71,0x77,0x77,0x71,0x65,0x71,0xa7,0x20,0x20,0x20