您好,登錄后才能下訂單哦!
使用python3怎么實現一個多線程聊天室?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
Python主要應用于:1、Web開發;2、數據科學研究;3、網絡爬蟲;4、嵌入式應用開發;5、游戲開發;6、桌面應用開發。
具體內容如下
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怎么實現一個多線程聊天室的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。