您好,登錄后才能下訂單哦!
這篇文章主要介紹了如何用python實(shí)現(xiàn)簡(jiǎn)單聊天功能的相關(guān)知識(shí),內(nèi)容詳細(xì)易懂,操作簡(jiǎn)單快捷,具有一定借鑒價(jià)值,相信大家閱讀完這篇如何用python實(shí)現(xiàn)簡(jiǎn)單聊天功能文章都會(huì)有所收獲,下面我們一起來看看吧。
服務(wù)端:
from socket import socket def main(): #創(chuàng)建套接字對(duì)象并指定使用哪種傳輸服務(wù) socket()括號(hào)不傳遞參數(shù)默認(rèn)是tcpipv4 server = socket() #綁定ip地址和端口(這樣可以區(qū)分不同的服務(wù)) 端口可以自己指定建議使用1024以后的端口 server.bind(('10.7.152.123',5650)) # 開啟監(jiān)聽 ----監(jiān)聽客戶端連接到服務(wù)器 server.listen(512) #檢查服務(wù)器是否已經(jīng)啟動(dòng) print('服務(wù)器已啟動(dòng)') #通過循環(huán)接收客戶端的連接,并做出相應(yīng)的處理(提供服務(wù)) while True: #接收客戶端的連接 accpet是一個(gè)阻塞的方法 如果沒有客戶端連接到服務(wù)器 #這個(gè)方法就會(huì)阻塞代碼不會(huì)向下執(zhí)行(返回的對(duì)象是一個(gè)元祖) client , addr = server.accept() print(str(addr) + '已經(jīng)成功連接到服務(wù)器.') while True: #decode對(duì)接收到的消息進(jìn)行解碼 print(client.recv(1024).decode('utf-8')) data = input('服務(wù)器:') #判斷客戶端發(fā)來的消息如果出現(xiàn)bey或者拜拜跳出循環(huán) if data == 'bey' or data == '拜拜': break #encode對(duì)發(fā)送的消息進(jìn)行轉(zhuǎn)碼 client.send(data.encode('utf-8')) #斷開連接 client.close() if __name__ == '__main__': main()
客戶端:
from socket import socket def main(): #創(chuàng)建套接字對(duì)象 client = socket() #連接服務(wù)器 client.connect(('10.7.152.123',5650)) while True: data = input('客戶端:') #向服務(wù)端發(fā)送消息 client.send(data.encode('utf-8')) if data == 'Bey' or data == '拜拜': break print(client.recv(1024).decode('utf-8')) client.colse() if __name__ == '__main__': main()
運(yùn)行結(jié)果:
關(guān)于“如何用python實(shí)現(xiàn)簡(jiǎn)單聊天功能”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對(duì)“如何用python實(shí)現(xiàn)簡(jiǎn)單聊天功能”知識(shí)都有一定的了解,大家如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。