Python聊天室程序(基础版)

  

本文实例为大家分享了Python聊天室程序的具体代码,供大家参考,具体内容如下

  

客户端代码:

        #文件名:socketClient.py      进口套接字   导入系统   进口线程      #客户端GUI   从tkinter进口*   进口麻省理工            #创建一个TCP/IP套接字   袜子=socket.socket(插座。AF_INET socket.SOCK_STREAM)   #将套接字连接到服务器正在监听的端口   server_address=(' localhost ', 10000)   打印(sys。stderr,连接到%年代端口% s % server_address)   sock.connect (server_address)      根=Tk ()   # textDisplay   textDisplay=Pmw.ScrolledText(根)   textDisplay。包(扩大=1,padx=5, pady=5,一边=左)   # textInput   textInput=Pmw.ScrolledText(根)   textInput。包(扩大=1,padx=5, pady=5,一边=左)   #发送按钮和回调   def sendMsg(事件):   消息=socket.gethostname () + ': ' + textInput.get ()   #打印(sys。stderr,发送“% s”的消息)   打印(消息)   sock.sendall (message.encode ())   textInput.clear ()   #数据=https://www.yisu.com/zixun/sock.recv (100)   # textDisplay。插入(最终数据)   #打印(sys。stderr,”收到“% s”“%数据)      sendBtn=(根、文本=胺⑺汀?按钮   sendBtn.bind (“& lt; Button-1>”, sendMsg)   sendBtn。包(左端=)      def receiveMsg ():   而真正的:   data=https://www.yisu.com/zixun/sock.recv (100)   打印(sys。stderr,客户收到“% s”%数据)   textDisplay。插入(最终数据)         receiveThread=线程。线程(name=' waitForMSG、目标=receiveMsg)   receiveThread.start ()      root.mainloop ()   之前      

,服务器端代码:
  

        #文件名:socketServer.py      进口套接字   导入系统      #创建一个TCP/IP套接字   袜子=socket.socket(插座。AF_INET socket.SOCK_STREAM)      #将套接字绑定到端口   server_address=(' localhost ', 10000)   打印(sys。stderr, ' % s端口上启动% s % server_address)   sock.bind (server_address)      #侦听传入的连接   sock.listen (1)      而真正的:   #等待连接   打印(sys。stderr,等待连接)   连接,client_address=sock.accept ()      试一试:   打印(sys。“连接”,client_address stderr)      #接收小块中的数据并重新发送它   而真正的:   data=https://www.yisu.com/zixun/connection.recv (16)   打印(sys。stderr,”收到“% s”“%数据)   如果数据:   打印(sys。stderr,将数据发送回客户机)   connection.sendall(数据)   其他:   打印(sys。stderr,没有数据,client_address)   打破   最后:   #清理连接   connection.close ()      

客户端在监听服务器的消息采用了多线程的方法。

  

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

Python聊天室程序(基础版)