当前位置: 移动技术网 > IT编程>脚本编程>Python > python3实现多线程聊天室

python3实现多线程聊天室

2019年06月13日  | 移动技术网IT编程  | 我要评论

少女娼妇三邦车视网,南平采购,爱莱茵

使用python3创建多线程聊天室,供大家参考,具体内容如下

import threading 
import socket
 
#socket
udpsocket = none
#计数器
num = 1
 
#1.创建接受,发送方法
def inmessage():
  global num
  while true:
    #等待接收消息
    data = udpsocket.recvfrom(1024)
    #4. 将接收到的数据再发送给对方
    udpsocket.sendto(data[0], data[1])
    #打印获得的消息
    print("\r>> 消息%d => 来自:%s => %s"%(num,data[1],data[0].decode('gb2312')))
    print('\r>>',end='')
    #消息数量+1
    num+=1
 
def outmessage():
  while true:
    #发送地址
    sendaddr = ('192.168.106.132',8080)
    #获得输入数据
    senddata = input('\r>>')
    #发送消息
    udpsocket.sendto(senddata.encode('gb2312'),sendaddr)
 
 
#2.使用多线程执行接收发送
def main():
  global udpsocket
  
  #创建socket
  udpsocket = socket.socket(socket.af_inet,socket.sock_dgram)
  #绑定端口
  udpsocket.bind(('',8686))
 
  #创建线程
  t1 = threading.thread(target=inmessage)
  t2 = threading.thread(target=outmessage)
 
  #启动线程
  t1.start()
  t2.start()
 
  #主线程堵塞
  t1.join()
  t2.join()
 
#3.主方法运行
if __name__ == "__main__":
  main()

效果图:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持移动技术网。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网