python实现聊天
转:https://www.cnblogs.com/nulige/p/6297829.html
server.py
import socket
import select
sk=socket.socket()
sk.bind(("127.0.0.1",8801))
sk.listen(5)
inputs=[sk,]
while True: #监听sk和conn
r,w,e=select.select(inputs,[],[],5) #conn发生变化,sk不变化就走else
print(len(r))
#判断sk or conn 谁发生了变化
for obj in r:
if obj==sk:
conn,add=obj.accept()
print(conn)
inputs.append(conn)
else:
data_byte=obj.recv(1024)
print(str(data_byte,‘utf8‘))
inp=input(‘回答%s号客户>>>‘%inputs.index(obj))
obj.sendall(bytes(inp,‘utf8‘))
print(‘>>‘,r)client.py
import socket
sk=socket.socket()
sk.connect((‘127.0.0.1‘,8801))
while True:
inp=input(">>>>")
sk.sendall(bytes(inp,"utf8"))
data=sk.recv(1024)
print(str(data,‘utf8‘))