亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

用Python寫一個模擬qq聊天小程序的代碼實例

 更新時間:2019年03月06日 16:26:51   作者:wdz306ling  
今天小編就為大家分享一篇關于用Python寫一個模擬qq聊天小程序的代碼實例,小編覺得內容挺不錯的,現在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧

Python 超簡單的聊天程序

客戶端:

import socket, sys
host = '10.248.27.23'
# host = raw_input("Plz imput destination IP:")
# data = raw_input("Plz imput what you want to submit:")
port = 51423
s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
try:
  s.connect((host, port))
except socket.gaierror, e:
  print "Address-related error connecting to server: %s" %e
  sys.exit(1)
except socket.error, e:
  print "Connection error: %s" %e
  sys.exit(1)
while 1:
  try:
    data = raw_input("I say: ")
    s.send(data)
    buf = s.recv(1024)
    if len(buf):
      print "he say: "+buf
  except:
    print "Dialogue Over"
    s.close()
    sys.exit(0)

服務器:

import socket, traceback, sys
host = ''
port = 51423
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
s.bind((host, port))
s.listen(1)
ClientSock, ClientAddr = s.accept()
while 1:
  try:
    buf = ClientSock.recv(1024)
    if len(buf):
      print "he say: "+buf
    data = raw_input("I say: ")
    ClientSock.sendall(data)
  except:
    print "Dialogue Over"
    ClientSock.close()
    sys.exit(0)

模擬qq聊天,語言環(huán)境:Python3

示例代碼:

# 編寫一個程序,模擬qq聊天
# 要求:程序可以同時發(fā)消息和收消息,發(fā)和收的過程中程序不退出
# 思路:使用socket來完成(socket 是全雙工模式,可以實現收和發(fā)同時進行),定義倆個線程,一個負責發(fā)消息、一個負責收消息
from threading import Thread
from socket import *
def rec_data():
  while True:
    rec_info = udpsocket.recvfrom(1024)
    print("\r>>%s:%s" % (rec_info[1], rec_info[0].decode("gb2312")))
    print("<<", end="")
def send_date():
  while True:
    send_mes = input("<<")
    udpsocket.sendto(send_mes.encode("gb2312"), (desip, desport))
udpsocket = None
desip = ""
desport = 0
def main():
  global udpsocket
  global desip
  global desport
  desip = input("對方IP:")
  desport = int(input("對方端口:"))
  udpsocket = socket(AF_INET, SOCK_DGRAM)
  udpsocket.bind(("", 9001))
  tr = Thread(target=rec_data)
  ts = Thread(target=send_date)
  tr.start()
  ts.start()
  tr.join()
  ts.join()
if __name__ == '__main__':
  main()

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。如果你想了解更多相關內容請查看下面相關鏈接

相關文章

  • NumPy 矩陣乘法的實現示例

    NumPy 矩陣乘法的實現示例

    這篇文章主要介紹了NumPy 矩陣乘法的實現示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-03-03
  • Python實現將Markdown文檔轉為EPUB電子書文件

    Python實現將Markdown文檔轉為EPUB電子書文件

    這篇文章主要為大家詳細介紹了Python如何實現將Markdown文檔轉為EPUB電子書文件,文中的示例代碼講解詳細,感興趣的小伙伴可以了解一下
    2023-06-06
  • Mac下使用HomeBrew安裝python3

    Mac下使用HomeBrew安裝python3

    這篇文章介紹了Mac下使用HomeBrew安裝python3的方法,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-06-06
  • Python實現在某個數組中查找一個值的算法示例

    Python實現在某個數組中查找一個值的算法示例

    今天小編就為大家分享一篇Python實現在某個數組中查找一個值的算法示例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-06-06
  • Python實現FLV視頻拼接功能

    Python實現FLV視頻拼接功能

    這篇文章主要介紹了Python實現FLV視頻拼接功能,本文給大家介紹的非常詳細具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-01-01
  • 詳解如何使用Pandas刪除DataFrame中的非數字類型數據

    詳解如何使用Pandas刪除DataFrame中的非數字類型數據

    在數據處理和分析過程中,經常會遇到需要清洗數據的情況,本文將詳細介紹如何使用Pandas刪除DataFrame中的非數字類型數據,感興趣的小伙伴可以了解下
    2024-03-03
  • Pandas數據處理庫畫圖與文件讀取使用示例

    Pandas數據處理庫畫圖與文件讀取使用示例

    這篇文章主要為大家介紹了Pandas數據處理庫畫圖與文件讀取使用示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-10-10
  • Python使用Beautiful Soup實現解析網頁

    Python使用Beautiful Soup實現解析網頁

    在這篇文章中,我們將介紹如何使用 Python 編寫一個簡單的網絡爬蟲,以獲取并解析網頁內容。我們將使用 Beautiful Soup 庫,它是一個非常強大的庫,用于解析和操作 HTML 和 XML 文檔。讓我們開始吧
    2023-05-05
  • CentOS7下安裝python3.6.8的教程詳解

    CentOS7下安裝python3.6.8的教程詳解

    這篇文章主要介紹了CentOS7下安裝python3.6.8的教程,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-01-01
  • Python 3.x 安裝opencv+opencv_contrib的操作方法

    Python 3.x 安裝opencv+opencv_contrib的操作方法

    下面小編就為大家分享一篇Python 3.x 安裝opencv+opencv_contrib的操作方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-04-04

最新評論