ソケット経由で 1 バイト (0-255) を書き込みたいのですが、方法がわかりません。
socket.send( str( unichr( byte ) ) )
0-128 で動作し、UnicodeEncodeError
.
ソケットにバイトを書き込む方法はありますか? 前もって感謝します。
ソケット経由で 1 バイト (0-255) を書き込みたいのですが、方法がわかりません。
socket.send( str( unichr( byte ) ) )
0-128 で動作し、UnicodeEncodeError
.
ソケットにバイトを書き込む方法はありますか? 前もって感謝します。
通常のバイト文字列を使用します。
socket.send('\xa5')
socket.send('Hello, world!')
または、chr()
.
socket.send(chr(0xa5))
実際にエラーを出しているのはソケットではなく、str 関数です。
>>> str(unichr(200))
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
UnicodeEncodeError: 'ascii' codec can't encode character u'\xc8' in position 0: ordinal not in range(128)
>>> unicode(unichr(200))
u'\xc8'
代わりに送信してみてください。