欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

python3实现多线程聊天室

程序员文章站 2022-12-19 10:35:19
使用python3创建多线程聊天室,供大家参考,具体内容如下 import threading import socket #socket udps...

使用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()

效果图:

python3实现多线程聊天室

python3实现多线程聊天室

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