Ads 468x60px

##EasyReadMore##

17 6月, 2013

[python] TypeError: str does not support buffer interface

今天在要透過tcp/ip

sock.sendall(message)


來傳字串時碰到





TypeError: str does not support buffer interface




 



原因是傳的字串為 unicode ,必須轉碼成 byte 字串才行



所以需要加上 encode()




sock.sendall(message) → sock.sendall(message.encode)




收的地方也要加上 decode()




connection.recv(512) → connection.recv(512).decode()




http://stackoverflow.com/questions/11781639/typeerror-str-does-not-support-buffer-interface

2 意見:

  1. sock.sendall(message) → sock.sendall(message.encode)
    我沒有成功,但是改成
    sock.sendall(message) → sock.sendall(message.encode())
    就過了

    回覆刪除
  2. 嗯嗯~也是可以喔
    可以加上指定的編碼
    sock.sendall(message.encode('utf8'))

    回覆刪除

 
Blogger Templates