Python半双工聊天程序

服务器程序:

 1 #!/usr/bin/python
 2 
 3 import socket
 4 
 5 HOST=''
 6 PORT=8008
 7 ADDR=(HOST,PORT)
 8 BUFSIZ=8096
 9 
10 SerSock=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
11 SerSock.bind(ADDR)
12 
13 while True:
14     data,addr=SerSock.recvfrom(BUFSIZ)
15     if not data:
16         continue
17     print ">%s"%data
18     while True:
19         data=raw_input(">")
20         if not data:
21             continue
22         else:
23             break
24     SerSock.sendto(data,addr)
25     
26 
27 SerSock.close()

客户端程序:

#!/usr/bin/python

import socket

HOST='localhost'
PORT=8008
ADDR=(HOST,PORT)
BUFSIZ=8096

CliSock=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)

while True:
    data=raw_input(">")
    if not data:
        continue
    CliSock.sendto(data,ADDR)
    data,addr=CliSock.recvfrom(BUFSIZ)
    if not data:
        break
    print ">%s"%data

CliSock.close()
原文地址:https://www.cnblogs.com/tmyyss/p/4564234.html