最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python socket聊天腳本代碼實(shí)例

 更新時(shí)間:2020年01月02日 09:07:17   作者:就是想學(xué)習(xí)  
這篇文章主要介紹了Python socket聊天腳本代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

這篇文章主要介紹了Python socket聊天腳本代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

沒有前端,多開了一條線程用于接收信息。

服務(wù)器端:

# -*- coding:utf-8 -*-
import socket
import threading
 
class Sock_Server:
  def __init__(self):
    self.host = '192.168.1.11' # 獲取主機(jī)名
    self.port = 12345 # 端口
    self.ser = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 設(shè)置模式
    self.ser.bind((self.host, self.port))
    self.ser.listen(5)
    print('等待客戶端連接:')
    self.sock, self.addr = self.ser.accept()    # 被動(dòng)接口客戶端連接。
    print(f'客戶:{self.addr},已經(jīng)連接')
 
  def recv(self):      # 接收信息模塊
    try:
      while True:
        recv_info = self.sock.recv(1024)
        if recv_info:
          print('\n收到消息:', recv_info.decode())
          if recv_info == '886':
            self.sock.close()
            self.ser.close()
            print('聊天結(jié)束!over')
            break
    finally:
      self.sock.close()
      self.ser.close()
 
  def send(self):
    try:
      while True:
        send_info = input('請(qǐng)輸入你要發(fā)送的內(nèi)容:')
        self.sock.send(send_info.encode())
        if send_info == '886':
          self.sock.close()
          self.ser.close()
          print('聊天結(jié)束!over')
          break
    finally:
      self.sock.close()
      self.ser.close()
 
if __name__ == '__main__':
  sock = Sock_Server()
  t1 = threading.Thread(target=sock.recv)
  t1.start()
  sock.send()

客戶端:

# -*- coding:utf8 -*-
import socket
import threading
 
class Sock_Cli:
  def __init__(self):
    self.host = socket.gethostname() # 獲取主機(jī)名
    self.port = 12345 # 端口
    self.ser = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 設(shè)置模式
    self.ser.connect((self.host, self.port))
 
  def recv(self):      # 接收信息模塊
    try:
      while True:
        recv_info = self.ser.recv(1024)
        if recv_info:
          print('\n收到消息:', recv_info.decode())
          if recv_info == '886':
            self.ser.close()
            print('聊天結(jié)束!over')
            break
    finally:
      self.ser.close()
 
  def send_info(self):
    try:
      while True:
        send_info = input('請(qǐng)輸入你要發(fā)送的內(nèi)容:')
        self.ser.sendall(send_info.encode())
        if send_info == '886':
          self.ser.close()
          print('聊天結(jié)束!over')
          break
    finally:
      self.ser.close()
if __name__ == '__main__':
  cli = Sock_Cli()
  t1 = threading.Thread(target=cli.recv)
  t1.start()
  cli.send_info()

socket是進(jìn)程間進(jìn)行通訊很好的方式。

整個(gè)代碼在886輸入退出還存在一些問(wèn)題,不改了。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • pandas數(shù)據(jù)的合并與拼接的實(shí)現(xiàn)

    pandas數(shù)據(jù)的合并與拼接的實(shí)現(xiàn)

    Pandas包的merge、join、concat方法可以完成數(shù)據(jù)的合并和拼接,本文主要介紹了這三種實(shí)現(xiàn)方式,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-12-12
  • python opencv實(shí)現(xiàn)圖像矯正功能

    python opencv實(shí)現(xiàn)圖像矯正功能

    這篇文章主要為大家詳細(xì)介紹了python opencv實(shí)現(xiàn)圖像矯正功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • Python實(shí)現(xiàn)單詞拼寫檢查

    Python實(shí)現(xiàn)單詞拼寫檢查

    這篇文章主要介紹了Python實(shí)現(xiàn)單詞拼寫檢查,本文講解了單詞拼寫檢查的一些知識(shí)并給出兩種實(shí)現(xiàn)方法,需要的朋友可以參考下
    2015-04-04
  • Python中zip()函數(shù)用法及應(yīng)用場(chǎng)景詳解

    Python中zip()函數(shù)用法及應(yīng)用場(chǎng)景詳解

    Python的zip()函數(shù)用于將多個(gè)可迭代對(duì)象的元素按位置組合成元組,支持不等長(zhǎng)的可迭代對(duì)象和多個(gè)可迭代對(duì)象,這篇文章主要介紹了Python中zip()函數(shù)用法及應(yīng)用場(chǎng)景的相關(guān)資料,需要的朋友可以參考下
    2025-04-04
  • 關(guān)于python爬蟲模塊urllib庫(kù)詳解

    關(guān)于python爬蟲模塊urllib庫(kù)詳解

    這篇文章主要介紹了關(guān)于python爬蟲模塊urllib庫(kù)詳解,學(xué)習(xí)爬蟲,最初的操作便是模擬瀏覽器向服務(wù)端發(fā)出請(qǐng)求,這里我們就學(xué)習(xí)使用urlib庫(kù)的用法,需要的朋友可以參考下
    2023-07-07
  • Python不要再使用while死循環(huán),定時(shí)器代替效果更佳

    Python不要再使用while死循環(huán),定時(shí)器代替效果更佳

    在python開發(fā)的過(guò)程中,經(jīng)常見到小伙伴直接使用while True的死循環(huán)+sleep的方式來(lái)保存程序的一直運(yùn)行。這種方式雖然能達(dá)到效果,但是說(shuō)不定什么時(shí)候就直接崩潰了,其實(shí)使用定時(shí)器效果也不錯(cuò)哦
    2023-03-03
  • python判斷字符串或者集合是否為空的實(shí)例

    python判斷字符串或者集合是否為空的實(shí)例

    今天小編就為大家分享一篇python判斷字符串或者集合是否為空的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-01-01
  • Python實(shí)現(xiàn)病毒仿真器的方法示例(附demo)

    Python實(shí)現(xiàn)病毒仿真器的方法示例(附demo)

    這篇文章主要介紹了Python實(shí)現(xiàn)病毒仿真器的方法示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02
  • pytorch讀取圖像數(shù)據(jù)轉(zhuǎn)成opencv格式實(shí)例

    pytorch讀取圖像數(shù)據(jù)轉(zhuǎn)成opencv格式實(shí)例

    這篇文章主要介紹了pytorch讀取圖像數(shù)據(jù)轉(zhuǎn)成opencv格式實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-06-06
  • Python Thread虛假喚醒概念與防范詳解

    Python Thread虛假喚醒概念與防范詳解

    這篇文章主要介紹了Python Thread虛假喚醒概念與防范,虛假喚醒是一種現(xiàn)象,它只會(huì)出現(xiàn)在多線程環(huán)境中,指的是在多線程環(huán)境下,多個(gè)線程等待在同一個(gè)條件上,等到條件滿足時(shí),所有等待的線程都被喚醒,但由于多個(gè)線程執(zhí)行的順序不同
    2023-02-02

最新評(píng)論

漯河市| 本溪| 永清县| 大方县| 射阳县| 陇南市| 项城市| 东乡| 房山区| 清苑县| 台安县| 忻州市| 平遥县| 东乌| 漳平市| 汪清县| 阿巴嘎旗| 洪洞县| 凉城县| 温泉县| 泸水县| 永州市| 洞头县| 根河市| 江华| 汝南县| 上虞市| 德兴市| 屏东县| 长治县| 夏河县| 正安县| 杭州市| 竹北市| 千阳县| 宿松县| 岱山县| 石屏县| 福鼎市| 宕昌县| 广丰县|