网络编程
位置:首页>> 网络编程>> Python编程>> Python Socket编程之多线程聊天室

Python Socket编程之多线程聊天室

作者:zyaphone  发布时间:2021-03-23 21:01:02 

标签:python,聊天室

本文为大家分享了Python多线程聊天室,是一个Socket,两个线程,一个是服务器,一个是客户端。
最近公司培训,要写个大富翁的小程序,准备做个服务器版的,先练练手。

代码:


#coding = utf-8

import socket
import threading

class UdpServer(threading.Thread):
def __init__(self):
 threading.Thread.__init__(self)
 self.address = ('127.0.0.1', 10000)
 self.s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
 self.s.bind(self.address)
 self.stop_flag = False

def recieve_msg(self):
 (data, addr) = self.s.recvfrom(2048)
 if data:
  print 'recieve data from', addr
  print data

def run(self):
 while not self.stop_flag:
  self.recieve_msg()

def stop(self):
 self.stop_flag = True

class UdpClient(threading.Thread):
def __init__(self):
 threading.Thread.__init__(self)
 self.address = ('127.0.0.1', 10001)
 self.s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
 self.stop_flag = False

def send_msg(self):
 data = raw_input()
 if not data:
  print 'Wrong inpiut'
  return
 else:
  self.s.sendto(data, self.address)

def run(self):
 while not True:
  self.send_msg()

def stop(self):
 self.stop_flag = True

def main():
t1 = UdpServer()
t2 = UdpClient()
t1.start()
t2.start()

if __name__ == '__main__':
main()

Python Socket编程之多线程聊天室

来源:https://blog.csdn.net/u012225151/article/details/52260835

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com