0
TLを数値を追加し、DR:x,i = b'', 10
を考えると、どのように私はx == b'\x10'
その結果、x
にi
を連結することができますか?は、バイナリ文字列に
私は、protobufエンコーディングのヘッダとしてvarintという数字をPythonでエンコードしようとしています。
は、ここで私が持っているコードです:私はバイトに文字列を追加することはできませんので
def encode_varint(value):
buf = b''
while True:
byte = value & 0x7f
value >>= 7
if value:
buf += chr(byte | 0x80)
else:
buf += chr(byte)
break
return buf
はしかし、これは失敗します。
効率的に整数値を取得してバイナリ文字列に追加するにはどうすればよいですか?
私が得た唯一の選択肢は 'buf + = chr(byte).encode( 'ascii')'ですが、効率的な臭いはありません。 – Phrogz