day29作业
写一个基于TCP协议套接字,服务端实现接收客户端的连接并发。
服务端:
# coding=utf-8
'''
写一个基于TCP协议套接字,服务端实现接收客户端的连接并发。
'''
import socket
from threading import Thread,Lock
server = socket.socket()
address = ("127.0.0.1",8888)
server.bind(address)
server.listen()
def task(conn,addr):
while True:
try:
data = conn.recv(1024).decode("utf-8")
print(f"来自{addr}的消息:{data}")
if data == "exit" or data == "q" or not data:
break
conn.send(data.encode("utf-8"))
except Exception as e:
print(e)
break
conn.close()
if __name__ == '__main__':
while True:
conn,addr = server.accept()
t = Thread(target=task,args=(conn,addr))
t.start()
客户端:
# coding=utf-8
import socket
client = socket.socket()
address = ("127.0.0.1",8888)
client.connect(address)
def task():
while True:
send_msg = input(">>>")
if send_msg == "q" or send_msg == "exit" or not send_msg:
break
client.send(send_msg.encode("utf-8"))
data = client.recv(1024)
print(data.decode("utf-8"))
#
# if __name__ == '__main__':
#
task()

浙公网安备 33010602011771号