tcp實現socket聊天功能
import socket
#1.創建服務器套接字
tcp_server = socket.socket(type=socket.SOCK_STREAM)
#2.綁定端口
ip_port = ("10.3.14.59",9000)
tcp_server.bind(ip_port)
#3.將socket創建的套接字變成被動類型,等待客戶連接請求
tcp_server.listen(5)
#4.讓服務阻塞,等待客戶端的連接
client_socket,client_addr=tcp_server.accept()
while True:
#5.接收客戶端發來的消息
recv_mag=client_socket.recv(1024)#接受1024字節
recv_mag=recv_mag.decode("utf-8")
#打印客戶端消息
print("客戶端{}的消息是:{}".format(client_addr,recv_mag))
#6.給客戶端發消息
msg=input("給客戶端發的消息是:")
msg = msg.encode("utf-8")
client_socket.send(msg)
#7.關閉套接字
# client_socket.close()
# tcp_server.close()
結果
客戶端('10.3.14.59', 49637)的消息是:7777
給客戶端發的消息是:66666
#########################################################
import socket
#1.創建客戶端的套接字
tcp_client = socket.socket(type= socket.SOCK_STREAM)
#2.綁定服務器端口
ip_port = ("10.3.14.59",9000)
tcp_client.connect(ip_port)
while True:
#3.給服務器發送消息
msg= input("給服務器發消息:")
msg = msg.encode("utf-8")
tcp_client.send(msg)
#4.接收服務器的消息
recv_msg = tcp_client.recv(1024)
recv_msg = recv_msg.decode("utf-8")
print("服務器的消息是:{}".format(recv_msg))
#5.關閉套接字
tcp_client.close()
結果:
給服務器發消息:7777
服務器的消息是:66666
給服務器發消息:
代碼註解已經很詳細了 有疑問歡迎留言·······