标签:复用 循环 blog except try ddr utf-8 服务端 import
服务端
import socket
sk1 = socket.socket()
sk1.bind((‘127.0.0.1‘,8001))
sk1.listen()
sk2 = socket.socket()
sk2.bind((‘127.0.0.1‘,8002))
sk2.listen()
sk3 = socket.socket()
sk3.bind((‘127.0.0.1‘,8003))
sk3.listen()
inp = [sk1,]
import select
while True:
print(len(inp))
#r_list 接收inp参数 如果有用户来链接 它就会感知到,
#w_list 可以写固定句柄 进行监听 如果 [sk1,sk3]
#e_list 监听发生错误的句柄,如果有把就把它移除掉, 如下面for循环
r_list, w_list, e_list= select.select(inp,[],[],1)
for i in r_list:
# print(i,‘\n‘,sk1.accept())
if i == sk1:
# print(i.accept(),‘\n‘,sk1.accept())
conn,address = i.accept()
inp.append(conn)
print(inp)
else:
try:
str(conn.recv(1024),encoding=‘utf-8‘)
conn.sendall(bytes(‘hello‘,encoding=‘utf-8‘))
except Exception as e:
inp.remove(i)
客户端 import socket obj = socket.socket() obj.connect((‘127.0.0.1‘,8001)) inp = input(‘‘) obj.sendall(bytes(inp,encoding=‘utf-8‘)) r = str(obj.recv(1024),encoding=‘utf-8‘) print(r)
标签:复用 循环 blog except try ddr utf-8 服务端 import
原文地址:http://www.cnblogs.com/cloniu/p/6258962.html