sever.py
import socket s = socket.socket() host = socket.gethostname() port = 13323 s.bind((host,port)) s.listen(5) while True: c,addr = s.accept() print('連接地址:',addr) str1 = '歡迎' c.send(str1) c.close()
client.py
import socket s = socket.socket() host = socket.gethostname() port = 13323 s.connect((host,port)) print(s.recv(1024)) s.close()
分別運行之后sever.py報錯
Traceback (most recent call last): File ".\server.py", line 11, in <module> c.send(str1) TypeError: a bytes-like object is required, not 'str'
解決辦法:
sever.py改為
import socket s = socket.socket() host = socket.gethostname() port = 13323 s.bind((host,port)) s.listen(5) while True: c,addr = s.accept() print('連接地址:',addr) str1 = '歡迎' c.send(str1.encode("utf8")) c.close()
client.py改為
import socket s = socket.socket() host = socket.gethostname() port = 13323 s.connect((host,port)) print(s.recv(1024).decode()) s.close()
分別運行后:
client.py輸出
歡迎