python實(shí)現(xiàn)簡(jiǎn)單聊天功能
python的功能確實(shí)強(qiáng)大,幾行代碼就能實(shí)現(xiàn)聊天功能 ,供大家參考,具體內(nèi)容如下
服務(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é)果:


以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- python的tkinter布局之簡(jiǎn)單的聊天窗口實(shí)現(xiàn)方法
- 教你用Python創(chuàng)建微信聊天機(jī)器人
- python操作微信自動(dòng)發(fā)消息的實(shí)現(xiàn)(微信聊天機(jī)器人)
- 基于Python如何使用AIML搭建聊天機(jī)器人
- 快速實(shí)現(xiàn)基于Python的微信聊天機(jī)器人示例代碼
- Python實(shí)現(xiàn)聊天機(jī)器人的示例代碼
- Python QQBot庫(kù)的QQ聊天機(jī)器人
- python實(shí)現(xiàn)聊天小程序
- Python基于Socket實(shí)現(xiàn)的簡(jiǎn)單聊天程序示例
- 使用Python AIML搭建聊天機(jī)器人的方法示例
相關(guān)文章
對(duì)python中基于tcp協(xié)議的通信(數(shù)據(jù)傳輸)實(shí)例講解
今天小編就為大家分享一篇對(duì)python中基于tcp協(xié)議的通信(數(shù)據(jù)傳輸)實(shí)例講解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-07-07
Python Requests爬蟲之求取關(guān)鍵詞頁(yè)面詳解
這篇文章主要為大家詳細(xì)介紹了Python Requests爬蟲之求取關(guān)鍵詞頁(yè)面,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助2022-02-02
基于Python實(shí)現(xiàn)原生的登錄驗(yàn)證碼詳情
在前面的文章中,我有分享到 vue+drf+第三方滑動(dòng)驗(yàn)證碼接入的實(shí)現(xiàn),本文將要分享的是基于 python 實(shí)現(xiàn)原生的登錄驗(yàn)證碼,需要的朋友可以參考一下2021-10-10
Django模板標(biāo)簽{% for %}循環(huán),獲取制定條數(shù)據(jù)實(shí)例
這篇文章主要介紹了Django模板標(biāo)簽{% for %}循環(huán),獲取制定條數(shù)據(jù)實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-05-05
python使用jenkins發(fā)送企業(yè)微信通知的實(shí)現(xiàn)
公司使用的是企業(yè)微信,因此考慮Jenkins通知企業(yè)微信機(jī)器人的實(shí)現(xiàn)方式,本文主要介紹了python使用jenkins發(fā)送企業(yè)微信通知的實(shí)現(xiàn),感興趣的可以了解一下2021-06-06
用Python制作簡(jiǎn)單的樸素基數(shù)估計(jì)器的教程
這篇文章主要介紹了用Python制作簡(jiǎn)單的樸素基數(shù)估計(jì)器的教程,同時(shí)介紹了如何去改進(jìn)精度來進(jìn)行算法優(yōu)化,需要的朋友可以參考下2015-04-04
python使用UDP實(shí)現(xiàn)客戶端和服務(wù)器對(duì)話
這篇文章主要為大家介紹了python使用UDP實(shí)現(xiàn)客戶端和服務(wù)器對(duì)話示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-03-03
Python+OpenCV實(shí)現(xiàn)尋找到圓點(diǎn)標(biāo)定板的角點(diǎn)
這篇文章主要為大家詳細(xì)介紹了Python+OpenCV實(shí)現(xiàn)找到圓點(diǎn)標(biāo)定板所有點(diǎn)后通過距離找兩個(gè)角點(diǎn),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下2022-11-11

