这学期课很多,加上学校就业办这边事情也不少,所以零散时间琢磨了很多天,开始想用进程的并发实现一个收,一个发,但ide无法实现同时print和input,所以暂时只实现了一个类似对讲机一样的程序,就是A说B听,然后B说A听,如此循环。
先看程序:
PCa:
import socket
Sockin = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) #新建socket
Sockin.bind(('192.168.10.5',23000)) #socket绑定该主机的ip和端口
while True: #循环中执行收发功能
text = raw_input('> ')
Sockin.sendto(text,(('192.168.10.8',23000))) #将 'text’ 发送给对方
if text == 'q':
Scokin.close() #退出时关闭socket
break
msg,(addr,port) = Sockin.recvfrom(100) # 接受数据
if msg == 'q':
Sockin.close()
break
print msg
PCb:
import socket
Sockin = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
Sockin.bind(('192.168.10.8',23000))
while True:
msg,(addr,port) = Sockin.recvfrom(100)
if msg == 'q':
Sockin.close()
break
else:
print msg
text = raw_input('> ')
Sockin.sendto(text,(('192.168.10.5',23000)))
if text =='q':
Sockin.close()
break
编译后测试截图:
PCa:
PCb:
这是个相当简单的程序,我接下来要做的是将该程序整合到PyQt4里面去,以实现聊天功能!
加油!
©著作权归作者所有:来自51CTO博客作者neo1989的原创作品,如需转载,请注明出处,否则将追究法律责任
共同学习,写下你的评论
评论加载中...
作者其他优质文章