''' 服务端 ''' import time ''' socket.AF_INET ipv4 socket.AF_INET6 ipv6 socket.SOCK_STREAM 流式,tcp socket.SOCK_DGRAM 数据报,udp ''' import socket # 建立链接 s = socket.socket(socket.AF_INET,socket.SOCK_STREAM) # 地址(IP,port) #add = ('120.79.36.170',6666) add = ('127.0.0.1',6666) # 绑定地址,地址必须是元祖 s.bind(add) # 监听,同时接受的socket数量 s.listen(10) print("server is running ...") while 1: try: # 接受链接,conn新的套接字,addr客户端地址 conn,addr = s.accept() while 1: # 接收数据,参数接收的大小 data = conn.recv(2048) if data == b'exit': conn.close() print("RECV:{0}".format(data)) # 发送数据 conn.sendall(data.upper()) except Exception as e: conn.close()
''' 客户端 ''' import socket # 建立链接 s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 地址(IP,port) add = ('127.0.0.1', 6666) s.connect(add) flage = 1 while flage: word = input("word:") if word == "exit": flage = 0 if word == "": continue # 发送数据 s.sendall(word.encode("utf-8")) data = s.recv(2048) print("RECV:{0}".format(data))